tweb/public/t/main.bundle.js

19 lines
612 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

!function(e){function t(t){for(var i,o,r=t[0],d=t[1],f=t[2],c=0,u=[];c<r.length;c++)o=r[c],Object.prototype.hasOwnProperty.call(n,o)&&n[o]&&u.push(n[o][0]),n[o]=0;for(i in d)Object.prototype.hasOwnProperty.call(d,i)&&(e[i]=d[i]);for(l&&l(t);u.length;)u.shift()();return a.push.apply(a,f||[]),s()}function s(){for(var e,t=0;t<a.length;t++){for(var s=a[t],i=!0,r=1;r<s.length;r++){var d=s[r];0!==n[d]&&(i=!1)}i&&(a.splice(t--,1),e=o(o.s=s[0]))}return e}var i={},n={0:0},a=[];function o(t){if(i[t])return i[t].exports;var s=i[t]={i:t,l:!1,exports:{}};return e[t].call(s.exports,s,s.exports,o),s.l=!0,s.exports}o.m=e,o.c=i,o.d=function(e,t,s){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:s})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var s=Object.create(null);if(o.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)o.d(s,i,function(t){return e[t]}.bind(null,i));return s},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="";var r=window.webpackJsonp=window.webpackJsonp||[],d=r.push.bind(r);r.push=t,r=r.slice();for(var f=0;f<r.length;f++)t(r[f]);var l=d;a.push([66,1]),s()}([function(e,t,s){"use strict";
/*!
* Webogram v0.7.0 - messaging web application for MTProto
* https://github.com/zhukov/webogram
* Copyright (C) 2014 Igor Zhukov <igor.beatle@gmail.com>
* https://github.com/zhukov/webogram/blob/master/LICENSE
*/Object.defineProperty(t,"__esModule",{value:!0}),t.positionElementByIndex=t.getFileURL=t.getEmojiToneIndex=t.calcImageInBox=t.fillPropertyValue=t.encodeEntities=t.escapeRegExp=t.listMergeSorted=t.deepEqual=t.formatNumber=t.formatBytes=t.copy=t.whichChild=t.getObjectKeysAndSort=t.findUpAttribute=t.findUpTag=t.findUpClassName=t.numberWithCommas=t.safeReplaceObject=t.tsNow=t.isObject=t.langPack=t.generatePathData=t.$rootScope=t.getRichElementValue=t.placeCaretAtEnd=t.getRichValue=t.cancelEvent=t.checkDragEvent=t.isInDOM=t.dT=void 0;var i=Date.now();function n(e,t,s,i,a){if(3!=e.nodeType){if(1==e.nodeType){var o=i===e,r="DIV"==e.tagName||"P"==e.tagName;r&&s.length||"BR"==e.tagName?(t.push(s.join("")),s.splice(0,s.length)):"IMG"==e.tagName&&e.alt&&s.push(e.alt),o&&!a&&s.push("");for(var d=e.firstChild;d;)n(d,t,s,i,a),d=d.nextSibling;o&&a&&s.push(""),r&&s.length&&(t.push(s.join("")),s.splice(0,s.length))}}else if(i===e){var f=e.nodeValue;s.push(f.substr(0,a)+""+f.substr(a))}else s.push(e.nodeValue)}t.dT=function(){return"["+((Date.now()-i)/1e3).toFixed(3)+"]"},t.isInDOM=function e(t,s){return!!t&&(t==(s=s||document.body)||e(t.parentNode,s))},t.checkDragEvent=function(e){if(!e||e.target&&("IMG"==e.target.tagName||"A"==e.target.tagName))return!1;if(!e.dataTransfer||!e.dataTransfer.types)return!0;for(var t=0;t<e.dataTransfer.types.length;t++)if("Files"==e.dataTransfer.types[t])return!0;return!1},t.cancelEvent=function(e){if(e=e||window.event){e=e.originalEvent||e;try{e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault(),e.returnValue=!1,e.cancelBubble=!0}catch(e){}}return!1},t.getRichValue=function(e){if(!e)return"";var t=[],s=[];n(e,t,s),s.length&&t.push(s.join(""));var i=t.join("\n");return i=i.replace(/\u00A0/g," ")},t.placeCaretAtEnd=function(e){if(e.focus(),void 0!==window.getSelection&&void 0!==document.createRange){var t=document.createRange();t.selectNodeContents(e),t.collapse(!1);var s=window.getSelection();s.removeAllRanges(),s.addRange(t)}else if(void 0!==document.body.createTextRange){var i=document.body.createTextRange();i.moveToElementText(e),i.collapse(!1),i.select()}},t.getRichElementValue=n,t.$rootScope={$broadcast:(e,t)=>{let s=new CustomEvent(e,{detail:t});document.dispatchEvent(s)},$on:(e,t)=>{document.addEventListener(e,t)},$off:(e,t)=>{document.removeEventListener(e,t)},selectedPeerID:0,myID:0,idle:{isIDLE:!1}};var a=function(e,t,s,i,n,a,o){return[e,",",t," ",s," ",i,",",n," ",a,",",o].join("")};function o(e){if(!e.parentNode)return-1;let t=0;for(;null!=(e=e.previousElementSibling);)++t;return t}function r(e){if(null===e||"object"!=typeof e)return e;if(e instanceof Date)return new Date(e.getTime());if(Array.isArray(e)){var t=[];return e.forEach((function(e){t.push(r(e))})),t}let s=new e.constructor;for(var i in e)e.hasOwnProperty(i)&&(s[i]=r(e[i]));return s}t.generatePathData=function(e,t,s,i,n,o,r,d){var f=[];return f.push("M"+(e+s/2)+","+t),f.push("H"+(e+s-o)),o>0&&f.push("A"+a(o,o,0,0,1,e+s,t+o)),f.push("V"+(t+i-r)),r>0&&f.push("A"+a(r,r,0,0,1,e+s-r,t+i)),f.push("H"+(e+d)),d>0&&f.push("A"+a(d,d,0,0,1,e+0,t+i-d)),f.push("V"+(t+n)),n>0&&f.push("A"+a(n,n,0,0,1,e+n,t+0)),f.push("Z"),f.join(" ")},t.langPack={messageActionChatCreate:"created the group",messageActionChatEditTitle:"changed group name",messageActionChatEditPhoto:"changed group photo",messageActionChatDeletePhoto:"removed group photo",messageActionChatReturn:"returned to group",messageActionChatJoined:"joined the group",messageActionChatAddUser:"invited {user}",messageActionChatAddUsers:"invited {} users",messageActionChatLeave:"left the group",messageActionChatDeleteUser:"removed user",messageActionChatJoinedByLink:"joined the group",messageActionPinMessage:"pinned message",messageActionContactSignUp:"joined Telegram",messageActionChannelCreate:"Channel created",messageActionChannelEditTitle:"Channel renamed",messageActionChannelEditPhoto:"Channel photo updated",messageActionChannelDeletePhoto:"Channel photo removed",messageActionHistoryClear:"",messageActionChannelMigrateFrom:"","messageActionPhoneCall.in_ok":"Incoming Call","messageActionPhoneCall.out_ok":"Outgoing Call","messageActionPhoneCall.in_missed":"Missed Call","messageActionPhoneCall.out_missed":"Cancelled Call"},t.isObject=function(e){return"object"==typeof e&&null!==e},t.tsNow=function(e){var t=+new Date;return e?Math.floor(t/1e3):t},t.safeReplaceObject=function(e,t){for(var s in e)t.hasOwnProperty(s)||"$"==s.charAt(0)||delete e[s];for(var s in t)e[s]=t[s]},t.numberWithCommas=function(e){var t=e.toString().split(".");return t[0]=t[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),t.join(".")},t.findUpClassName=function(e,t){if(e.classList.contains(t))return e;for(;e.parentElement;)if((e=e.parentElement).classList.contains(t))return e;return null},t.findUpTag=function(e,t){if(e.tagName==t)return e;for(;e.parentElement;)if((e=e.parentElement).tagName===t)return e;return null},t.findUpAttribute=function(e,t){if(null!=e.getAttribute(t))return e;for(;e.parentElement;)if(null!=(e=e.parentElement).getAttribute(t))return e;return null},t.getObjectKeysAndSort=function(e,t="asc"){const s=Object.keys(e).map(e=>+e);return"asc"==t?s.sort((e,t)=>e-t):s.sort((e,t)=>t-e)},t.whichChild=o,t.copy=r,t.formatBytes=function(e,t=2){if(0===e)return"0 Bytes";const s=t<0?0:t,i=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,i)).toFixed(s))+" "+["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][i]},t.formatNumber=function(e,t=2){if(0===e)return"0";const s=t<0?0:t,i=Math.floor(Math.log(e)/Math.log(1e3));return parseFloat((e/Math.pow(1e3,i)).toFixed(s))+["","K","M","B","T"][i]},t.deepEqual=function e(t,s){const i=Object.keys,n=typeof t;return t&&s&&"object"===n&&n===typeof s?i(t).length===i(s).length&&i(t).every(i=>e(t[i],s[i])):t===s},t.listMergeSorted=function(e,t){t=t||[];for(var s=r(e=e||[]),i=e.length?e[e.length-1]:4294967295,n=0;n<t.length;n++)t[n]<i&&s.push(t[n]);return s},t.escapeRegExp=function(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")},t.encodeEntities=function(e){return e.replace(/&/g,"&amp;").replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,e=>"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";").replace(/([^\#-~| |!])/g,e=>"&#"+e.charCodeAt(0)+";").replace(/</g,"&lt;").replace(/>/g,"&gt;")},t.fillPropertyValue=function(e){let t=e.split(" ");if(4!=t.length){t[0]||(t[0]="0px");for(let e=t.length;e<4;++e)t[e]=t[e%2]||t[0]||"0px"}return t},t.calcImageInBox=function(e,t,s,i,n){if(e<s&&t<i)return{w:e,h:t};var a=s,o=i;return e/t>s/i?o=t*s/e|0:(a=e*i/t|0)>s&&(o=o*s/a|0,a=s),n&&a>=e&&o>=t&&(a=e,o=t),{w:a,h:o}},t.getEmojiToneIndex=function(e){let t=e.match(/[\uDFFB-\uDFFF]/);return t?5-(57343-t[0].charCodeAt(0)):0},t.getFileURL=function(e,t){return"/"+e+"/"+encodeURIComponent(JSON.stringify(t))},t.positionElementByIndex=function(e,t,s){const i=o(e);return i!=s&&(-1!=i&&i<s&&(s+=1),t.childElementCount>s?t.insertBefore(e,t.children[s]):t.append(e),!0)}},function(e,t,s){"use strict";
/*!
* Webogram v0.7.0 - messaging web application for MTProto
* https://github.com/zhukov/webogram
* Copyright (C) 2014 Igor Zhukov <igor.beatle@gmail.com>
* https://github.com/zhukov/webogram/blob/master/LICENSE
*/Object.defineProperty(t,"__esModule",{value:!0}),t.isServiceWorkerSupported=t.touchSupport=t.mediaSizes=t.LatinizeMap=t.TLD=t.Countries=t.Emoji=t.isAppleMobile=t.isApple=t.isAndroid=t.isSafari=void 0;const i=s(47);Object.defineProperty(t,"isSafari",{enumerable:!0,get:function(){return i.isSafari}}),Object.defineProperty(t,"isAndroid",{enumerable:!0,get:function(){return i.isAndroid}}),Object.defineProperty(t,"isApple",{enumerable:!0,get:function(){return i.isApple}}),Object.defineProperty(t,"isAppleMobile",{enumerable:!0,get:function(){return i.isAppleMobile}}),t.Emoji={2049:6356,2122:6364,2139:6389,2194:6269,2195:6268,2196:6267,2197:6261,2198:6263,2199:6265,2328:680,2600:4177,2601:4185,2602:4200,2603:4205,2604:4207,2611:6341,2614:4201,2615:3101,2618:2123,2620:194,2622:6258,2623:6259,2626:6288,2638:6285,2639:166,2648:6293,2649:6294,2650:6301,2651:6302,2652:6303,2653:6304,2660:567,2663:570,2665:568,2666:569,2668:457,2692:6184,2693:4110,2694:6187,2696:6195,2697:6201,2699:6193,2702:6171,2705:6340,2708:4118,2709:6132,2712:6146,2714:6342,2716:6343,2721:6284,2728:56,2733:6352,2734:6353,2744:4204,2747:6354,2753:6357,2754:6358,2755:6359,2757:6360,2763:1125,2764:1127,2795:6346,2796:6347,2797:6348,2934:6272,2935:6273,3030:6361,3297:6413,3299:6414,"0023-20e3":6365,"002a-20e3":6366,"0030-20e3":6367,"0031-20e3":6368,"0032-20e3":6369,"0033-20e3":6370,"0034-20e3":6371,"0035-20e3":6372,"0036-20e3":6373,"0037-20e3":6374,"0038-20e3":6375,"0039-20e3":6376,"00a9":6362,"00ae":6363,"1f004":573,"1f0cf":572,"1f170":6383,"1f171":6385,"1f17e":6394,"1f17f":6396,"1f18e":6384,"1f191":6386,"1f192":6387,"1f193":6388,"1f194":6390,"1f195":6392,"1f196":6393,"1f197":6395,"1f198":6397,"1f199":6398,"1f19a":6399,"1f1e6-1f1e8":78,"1f1e6-1f1e9":79,"1f1e6-1f1ea":710,"1f1e6-1f1eb":711,"1f1e6-1f1ec":712,"1f1e6-1f1ee":713,"1f1e6-1f1f1":714,"1f1e6-1f1f2":715,"1f1e6-1f1f4":716,"1f1e6-1f1f6":717,"1f1e6-1f1f7":718,"1f1e6-1f1f8":719,"1f1e6-1f1f9":720,"1f1e6-1f1fa":721,"1f1e6-1f1fc":722,"1f1e6-1f1fd":723,"1f1e6-1f1ff":724,"1f1e7-1f1e6":725,"1f1e7-1f1e7":726,"1f1e7-1f1e9":727,"1f1e7-1f1ea":728,"1f1e7-1f1eb":729,"1f1e7-1f1ec":730,"1f1e7-1f1ed":731,"1f1e7-1f1ee":732,"1f1e7-1f1ef":733,"1f1e7-1f1f1":734,"1f1e7-1f1f2":735,"1f1e7-1f1f3":736,"1f1e7-1f1f4":737,"1f1e7-1f1f6":738,"1f1e7-1f1f7":739,"1f1e7-1f1f8":740,"1f1e7-1f1f9":741,"1f1e7-1f1fb":742,"1f1e7-1f1fc":743,"1f1e7-1f1fe":744,"1f1e7-1f1ff":745,"1f1e8-1f1e6":746,"1f1e8-1f1e8":747,"1f1e8-1f1e9":748,"1f1e8-1f1eb":749,"1f1e8-1f1ec":750,"1f1e8-1f1ed":751,"1f1e8-1f1ee":752,"1f1e8-1f1f0":753,"1f1e8-1f1f1":754,"1f1e8-1f1f2":755,"1f1e8-1f1f3":756,"1f1e8-1f1f4":757,"1f1e8-1f1f5":758,"1f1e8-1f1f7":759,"1f1e8-1f1fa":760,"1f1e8-1f1fb":761,"1f1e8-1f1fc":762,"1f1e8-1f1fd":763,"1f1e8-1f1fe":764,"1f1e8-1f1ff":765,"1f1e9-1f1ea":766,"1f1e9-1f1ec":767,"1f1e9-1f1ef":768,"1f1e9-1f1f0":769,"1f1e9-1f1f2":770,"1f1e9-1f1f4":771,"1f1e9-1f1ff":772,"1f1ea-1f1e6":773,"1f1ea-1f1e8":774,"1f1ea-1f1ea":775,"1f1ea-1f1ec":776,"1f1ea-1f1ed":777,"1f1ea-1f1f7":778,"1f1ea-1f1f8":779,"1f1ea-1f1f9":780,"1f1ea-1f1fa":781,"1f1eb-1f1ee":782,"1f1eb-1f1ef":783,"1f1eb-1f1f0":784,"1f1eb-1f1f2":785,"1f1eb-1f1f4":786,"1f1eb-1f1f7":787,"1f1ec-1f1e6":788,"1f1ec-1f1e7":789,"1f1ec-1f1e9":790,"1f1ec-1f1ea":791,"1f1ec-1f1eb":792,"1f1ec-1f1ec":793,"1f1ec-1f1ed":794,"1f1ec-1f1ee":795,"1f1ec-1f1f1":796,"1f1ec-1f1f2":797,"1f1ec-1f1f3":798,"1f1ec-1f1f5":799,"1f1ec-1f1f6":7100,"1f1ec-1f1f7":7101,"1f1ec-1f1f8":7102,"1f1ec-1f1f9":7103,"1f1ec-1f1fa":7104,"1f1ec-1f1fc":7105,"1f1ec-1f1fe":7106,"1f1ed-1f1f0":7107,"1f1ed-1f1f2":7108,"1f1ed-1f1f3":7109,"1f1ed-1f1f7":7110,"1f1ed-1f1f9":7111,"1f1ed-1f1fa":7112,"1f1ee-1f1e8":7113,"1f1ee-1f1e9":7114,"1f1ee-1f1ea":7115,"1f1ee-1f1f1":7116,"1f1ee-1f1f2":7117,"1f1ee-1f1f3":7118,"1f1ee-1f1f4":7119,"1f1ee-1f1f6":7120,"1f1ee-1f1f7":7121,"1f1ee-1f1f8":7122,"1f1ee-1f1f9":7123,"1f1ef-1f1ea":7124,"1f1ef-1f1f2":7125,"1f1ef-1f1f4":7126,"1f1ef-1f1f5":7127,"1f1f0-1f1ea":7128,"1f1f0-1f1ec":7129,"1f1f0-1f1ed":7130,"1f1f0-1f1ee":7131,"1f1f0-1f1f2":7132,"1f1f0-1f1f3":7133,"1f1f0-1f1f5":7134,"1f1f0-1f1f7":7135,"1f1f0-1f1fc":7136,"1f1f0-1f1fe":7137,"1f1f0-1f1ff":7138,"1f1f1-1f1e6":7139,"1f1f1-1f1e7":7140,"1f1f1-1f1e8":7141,"1f1f1-1f1ee":7142,"1f1f1-1f1f0":7143,"1f1f1-1f1f7":7144,"1f1f1-1f1f8":7145,"1f1f1-1f1f9":7146,"1f1f1-1f1fa":7147,"1f1f1-1f1fb":7148,"1f1f1-1f1fe":7149,"1f1f2-1f1e6":7150,"1f1f2-1f1e8":7151,"1f1f2-1f1e9":7152,"1f1f2-1f1ea":7153,"1f1f2-1f1eb":7154,"1f1f2-1f1ec":7155,"1f1f2-1f1ed":7156,"1f1f2-1f1f0":7157,"1f1f2-1f1f1":7158,"1f1f2-1f1f2":7159,"1f1f2-1f1f3":7160,"1f1f2-1f1f4":7161,"1f1f2-1f1f5":7162,"1f1f2-1f1f6":7163,"1f1f2-1f1f7":7164,"1f1f2-1f1f8":7165,"1f1f2-1f1f9":7166,"1f1f2-1f1fa":7167,"1f1f2-1f1fb":7168,"1f1f2-1f1fc":7169,"1f1f2-1f1fd":7170,"1f1f2-1f1fe":7171,"1f1f2-1f1ff":7172,"1f1f3-1f1e6":7173,"1f1f3-1f1e8":7174,"1f1f3-1f1ea":7175,"1f1f3-1f1eb":7176,"1f1f3-1f1ec":7177,"1f1f3-1f1ee":7178,"1f1f3-1f1f1":7179,"1f1f3-1f1f4":7180,"1f1f3-1f1f5":7181,"1f1f3-1f1f7":7182,"1f1f3-1f1fa":7183,"1f1f3-1f1ff":7184,"1f1f4-1f1f2":7185,"1f1f5-1f1e6":7186,"1f1f5-1f1ea":7187,"1f1f5-1f1eb":7188,"1f1f5-1f1ec":7189,"1f1f5-1f1ed":7190,"1f1f5-1f1f0":7191,"1f1f5-1f1f1":7192,"1f1f5-1f1f2":7193,"1f1f5-1f1f3":7194,"1f1f5-1f1f7":7195,"1f1f5-1f1f8":7196,"1f1f5-1f1f9":7197,"1f1f5-1f1fc":7198,"1f1f5-1f1fe":7199,"1f1f6-1f1e6":7200,"1f1f7-1f1ea":7201,"1f1f7-1f1f4":7202,"1f1f7-1f1f8":7203,"1f1f7-1f1fa":7204,"1f1f7-1f1fc":7205,"1f1f8-1f1e6":7206,"1f1f8-1f1e7":7207,"1f1f8-1f1e8":7208,"1f1f8-1f1e9":7209,"1f1f8-1f1ea":7210,"1f1f8-1f1ec":7211,"1f1f8-1f1ed":7212,"1f1f8-1f1ee":7213,"1f1f8-1f1ef":7214,"1f1f8-1f1f0":7215,"1f1f8-1f1f1":7216,"1f1f8-1f1f2":7217,"1f1f8-1f1f3":7218,"1f1f8-1f1f4":7219,"1f1f8-1f1f7":7220,"1f1f8-1f1f8":7221,"1f1f8-1f1f9":7222,"1f1f8-1f1fb":7223,"1f1f8-1f1fd":7224,"1f1f8-1f1fe":7225,"1f1f8-1f1ff":7226,"1f1f9-1f1e6":7227,"1f1f9-1f1e8":7228,"1f1f9-1f1e9":7229,"1f1f9-1f1eb":7230,"1f1f9-1f1ec":7231,"1f1f9-1f1ed":7232,"1f1f9-1f1ef":7233,"1f1f9-1f1f0":7234,"1f1f9-1f1f1":7235,"1f1f9-1f1f2":7236,"1f1f9-1f1f3":7237,"1f1f9-1f1f4":7238,"1f1f9-1f1f7":7239,"1f1f9-1f1f9":7240,"1f1f9-1f1fb":7241,"1f1f9-1f1fc":7242,"1f1f9-1f1ff":7243,"1f1fa-1f1e6":7244,"1f1fa-1f1ec":7245,"1f1fa-1f1f2":7246,"1f1fa-1f1f3":7247,"1f1fa-1f1f8":7248,"1f1fa-1f1fe":7249,"1f1fa-1f1ff":7250,"1f1fb-1f1e6":7251,"1f1fb-1f1e8":7252,"1f1fb-1f1ea":7253,"1f1fb-1f1ec":7254,"1f1fb-1f1ee":7255,"1f1fb-1f1f3":7256,"1f1fb-1f1fa":7257,"1f1fc-1f1eb":7258,"1f1fc-1f1f8":7259,"1f1fd-1f1f0":7260,"1f1fe-1f1ea":7261,"1f1fe-1f1f9":7262,"1f1ff-1f1e6":7263,"1f1ff-1f1f2":7264,"1f1ff-1f1fc":7265,"1f201":6400,"1f202":6401,"1f21a":6407,"1f22f":6404,"1f232":6408,"1f233":6412,"1f234":6411,"1f235":6416,"1f236":6403,"1f237":6402,"1f238":6410,"1f239":6406,"1f23a":6415,"1f250":6405,"1f251":6409,"1f300":4197,"1f301":449,"1f302":4199,"1f303":450,"1f304":452,"1f305":453,"1f306":454,"1f307":455,"1f308":4198,"1f309":456,"1f30a":4210,"1f30b":410,"1f30c":4184,"1f30d":41,"1f30e":42,"1f30f":43,"1f310":44,"1f311":4164,"1f312":4165,"1f313":4166,"1f314":4167,"1f315":4168,"1f316":4169,"1f317":4170,"1f318":4171,"1f319":4172,"1f31a":4173,"1f31b":4174,"1f31c":4175,"1f31d":4178,"1f31e":4179,"1f31f":4182,"1f320":4183,"1f321":4176,"1f324":4188,"1f325":4189,"1f326":4190,"1f327":4191,"1f328":4192,"1f329":4193,"1f32a":4194,"1f32b":4195,"1f32c":4196,"1f32d":347,"1f32e":349,"1f32f":350,"1f330":331,"1f331":2116,"1f332":2117,"1f333":2118,"1f334":2119,"1f335":2120,"1f336":323,"1f337":2115,"1f338":2107,"1f339":2110,"1f33a":2112,"1f33b":2113,"1f33c":2114,"1f33d":322,"1f33e":2121,"1f33f":2122,"1f340":2124,"1f341":2125,"1f342":2126,"1f343":2127,"1f344":329,"1f345":316,"1f346":319,"1f347":31,"1f348":32,"1f349":33,"1f34a":34,"1f34b":35,"1f34c":36,"1f34d":37,"1f34e":39,"1f34f":310,"1f350":311,"1f351":312,"1f352":313,"1f353":314,"1f354":344,"1f355":346,"1f356":340,"1f357":341,"1f358":364,"1f359":365,"1f35a":366,"1f35b":367,"1f35c":368,"1f35d":369,"1f35e":332,"1f35f":345,"1f360":370,"1f361":376,"1f362":371,"1f363":372,"1f364":373,"1f365":374,"1f366":385,"1f367":386,"1f368":387,"1f369":388,"1f36a":389,"1f36b":394,"1f36c":395,"1f36d":396,"1f36e":397,"1f36f":398,"1f370":391,"1f371":363,"1f372":356,"1f373":354,"1f374":3118,"1f375":3102,"1f376":3103,"1f377":3105,"1f378":3106,"1f379":3107,"1f37a":3108,"1f37b":3109,"1f37c":399,"1f37d":3117,"1f37e":3104,"1f37f":359,"1f380":517,"1f381":518,"1f382":390,"1f383":51,"1f384":52,"1f385":1326,"1f386":53,"1f387":54,"1f388":57,"1f389":58,"1f38a":59,"1f38b":510,"1f38c":73,"1f38d":511,"1f38e":512,"1f38f":513,"1f390":514,"1f391":515,"1f392":625,"1f393":637,"1f396":522,"1f397":519,"1f399":656,"1f39a":657,"1f39b":658,"1f39e":689,"1f39f":520,"1f3a0":458,"1f3a1":459,"1f3a2":460,"1f3a3":549,"1f3a4":659,"1f3a5":688,"1f3a6":6324,"1f3a7":660,"1f3a8":577,"1f3a9":636,"1f3aa":462,"1f3ab":521,"1f3ac":691,"1f3ad":575,"1f3ae":561,"1f3af":555,"1f3b0":563,"1f3b1":558,"1f3b2":564,"1f3b3":537,"1f3b4":574,"1f3b5":654,"1f3b6":655,"1f3b7":662,"1f3b8":663,"1f3b9":664,"1f3ba":665,"1f3bb":666,"1f3bc":653,"1f3bd":551,"1f3be":535,"1f3bf":552,"1f3c0":531,"1f3c1":71,"1f3c2":1397,"1f3c3-200d-2640-fe0f":1381,"1f3c3-200d-2642-fe0f":1380,"1f3c3":1379,"1f3c4-200d-2640-fe0f":1403,"1f3c4-200d-2642-fe0f":1402,"1f3c4":1401,"1f3c5":524,"1f3c6":523,"1f3c7":1395,"1f3c8":533,"1f3c9":534,"1f3ca-200d-2640-fe0f":1409,"1f3ca-200d-2642-fe0f":1408,"1f3ca":1407,"1f3cb-fe0f-200d-2640-fe0f":1415,"1f3cb-fe0f-200d-2642-fe0f":1414,"1f3cb":1413,"1f3cc-fe0f-200d-2640-fe0f":1400,"1f3cc-fe0f-200d-2642-fe0f":1399,"1f3cc":1398,"1f3cd":492,"1f3ce":491,"1f3cf":538,"1f3d0":532,"1f3d1":539,"1f3d2":540,"1f3d3":542,"1f3d4":48,"1f3d5":412,"1f3d6":413,"1f3d7":419,"1f3d8":421,"1f3d9":451,"1f3da":422,"1f3db":418,"1f3dc":414,"1f3dd":415,"1f3de":416,"1f3df":417,"1f3e0":423,"1f3e1":424,"1f3e2":425,"1f3e3":426,"1f3e4":427,"1f3e5":428,"1f3e6":429,"1f3e7":6234,"1f3e8":430,"1f3e9":431,"1f3ea":432,"1f3eb":433,"1f3ec":434,"1f3ed":435,"1f3ee":6102,"1f3ef":436,"1f3f0":437,"1f3f3-fe0f-200d-1f308":76,"1f3f3":75,"1f3f4-200d-2620-fe0f":77,"1f3f4-e0067-e0062-e0065-e006e-e0067-e007f":7266,"1f3f4-e0067-e0062-e0073-e0063-e0074-e007f":7267,"1f3f4-e0067-e0062-e0077-e006c-e0073-e007f":7268,"1f3f4":74,"1f3f5":2109,"1f3f7":6120,"1f3f8":543,"1f3f9":6189,"1f3fa":3121,"1f3fb":81,"1f3fc":82,"1f3fd":83,"1f3fe":84,"1f3ff":85,"1f400":244,"1f401":243,"1f402":225,"1f403":226,"1f404":227,"1f405":217,"1f406":218,"1f407":247,"1f408":214,"1f409":282,"1f40a":277,"1f40b":286,"1f40c":294,"1f40d":280,"1f40e":220,"1f40f":232,"1f410":234,"1f411":233,"1f412":22,"1f413":262,"1f414":261,"1f415-200d-1f9ba":28,"1f415":26,"1f416":229,"1f417":230,"1f418":239,"1f419":292,"1f41a":293,"1f41b":296,"1f41c":297,"1f41d":298,"1f41e":299,"1f41f":288,"1f420":289,"1f421":290,"1f422":278,"1f423":263,"1f424":264,"1f425":265,"1f426":266,"1f427":267,"1f428":252,"1f429":29,"1f42a":235,"1f42b":236,"1f42c":287,"1f42d":242,"1f42e":224,"1f42f":216,"1f430":246,"1f431":213,"1f432":281,"1f433":285,"1f434":219,"1f435":21,"1f436":25,"1f437":228,"1f438":276,"1f439":245,"1f43a":210,"1f43b":251,"1f43c":253,"1f43d":231,"1f43e":259,"1f43f":248,"1f440":1194,"1f441-fe0f-200d-1f5e8-fe0f":1145,"1f441":1195,"1f442":1188,"1f443":1190,"1f444":1197,"1f445":1196,"1f446":1164,"1f447":1166,"1f448":1162,"1f449":1163,"1f44a":1171,"1f44b":1150,"1f44c":1155,"1f44d":1168,"1f44e":1169,"1f44f":1174,"1f450":1176,"1f451":634,"1f452":635,"1f453":61,"1f454":66,"1f455":67,"1f456":68,"1f457":613,"1f458":614,"1f459":619,"1f45a":620,"1f45b":621,"1f45c":622,"1f45d":623,"1f45e":626,"1f45f":627,"1f460":630,"1f461":631,"1f462":633,"1f463":1483,"1f464":1481,"1f465":1482,"1f466":1200,"1f467":1201,"1f468-200d-1f33e":1267,"1f468-200d-1f373":1270,"1f468-200d-1f393":1258,"1f468-200d-1f3a4":1288,"1f468-200d-1f3a8":1291,"1f468-200d-1f3eb":1261,"1f468-200d-1f3ed":1276,"1f468-200d-1f466-200d-1f466":1471,"1f468-200d-1f466":1470,"1f468-200d-1f467-200d-1f466":1473,"1f468-200d-1f467-200d-1f467":1474,"1f468-200d-1f467":1472,"1f468-200d-1f468-200d-1f466":1460,"1f468-200d-1f468-200d-1f466-200d-1f466":1463,"1f468-200d-1f468-200d-1f467":1461,"1f468-200d-1f468-200d-1f467-200d-1f466":1462,"1f468-200d-1f468-200d-1f467-200d-1f467":1464,"1f468-200d-1f469-200d-1f466":1455,"1f468-200d-1f469-200d-1f466-200d-1f466":1458,"1f468-200d-1f469-200d-1f467":1456,"1f468-200d-1f469-200d-1f467-200d-1f466":1457,"1f468-200d-1f469-200d-1f467-200d-1f467":1459,"1f468-200d-1f4bb":1285,"1f468-200d-1f4bc":1279,"1f468-200d-1f527":1273,"1f468-200d-1f52c":1282,"1f468-200d-1f680":1297,"1f468-200d-1f692":1300,"1f468-200d-1f9af":1371,"1f468-200d-1f9b0":1206,"1f468-200d-1f9b1":1207,"1f468-200d-1f9b2":1209,"1f468-200d-1f9b3":1208,"1f468-200d-1f9bc":1374,"1f468-200d-1f9bd":1377,"1f468-200d-2695-fe0f":1255,"1f468-200d-2696-fe0f":1264,"1f468-200d-2708-fe0f":1294,"1f468-200d-2764-fe0f-200d-1f468":1452,"1f468-200d-2764-fe0f-200d-1f48b-200d-1f468":1448,"1f468":1204,"1f469-200d-1f33e":1268,"1f469-200d-1f373":1271,"1f469-200d-1f393":1259,"1f469-200d-1f3a4":1289,"1f469-200d-1f3a8":1292,"1f469-200d-1f3eb":1262,"1f469-200d-1f3ed":1277,"1f469-200d-1f466-200d-1f466":1476,"1f469-200d-1f466":1475,"1f469-200d-1f467-200d-1f466":1478,"1f469-200d-1f467-200d-1f467":1479,"1f469-200d-1f467":1477,"1f469-200d-1f469-200d-1f466":1465,"1f469-200d-1f469-200d-1f466-200d-1f466":1468,"1f469-200d-1f469-200d-1f467":1466,"1f469-200d-1f469-200d-1f467-200d-1f466":1467,"1f469-200d-1f469-200d-1f467-200d-1f467":1469,"1f469-200d-1f4bb":1286,"1f469-200d-1f4bc":1280,"1f469-200d-1f527":1274,"1f469-200d-1f52c":1283,"1f469-200d-1f680":1298,"1f469-200d-1f692":1301,"1f469-200d-1f9af":1372,"1f469-200d-1f9b0":1211,"1f469-200d-1f9b1":1213,"1f469-200d-1f9b2":1217,"1f469-200d-1f9b3":1215,"1f469-200d-1f9bc":1375,"1f469-200d-1f9bd":1378,"1f469-200d-2695-fe0f":1256,"1f469-200d-2696-fe0f":1265,"1f469-200d-2708-fe0f":1295,"1f469-200d-2764-fe0f-200d-1f468":1451,"1f469-200d-2764-fe0f-200d-1f469":1453,"1f469-200d-2764-fe0f-200d-1f48b-200d-1f468":1447,"1f469-200d-2764-fe0f-200d-1f48b-200d-1f469":1449,"1f469":1210,"1f46a":1454,"1f46b":1444,"1f46c":1445,"1f46d":1443,"1f46e-200d-2640-fe0f":1304,"1f46e-200d-2642-fe0f":1303,"1f46e":1302,"1f46f-200d-2640-fe0f":1387,"1f46f-200d-2642-fe0f":1386,"1f46f":1385,"1f470":1322,"1f471-200d-2640-fe0f":1219,"1f471-200d-2642-fe0f":1220,"1f471":1203,"1f472":1319,"1f473-200d-2640-fe0f":1318,"1f473-200d-2642-fe0f":1317,"1f473":1316,"1f474":1222,"1f475":1223,"1f476":1198,"1f477-200d-2640-fe0f":1313,"1f477-200d-2642-fe0f":1312,"1f477":1311,"1f478":1315,"1f479":197,"1f47a":198,"1f47b":199,"1f47c":1325,"1f47d":1100,"1f47e":1101,"1f47f":192,"1f480":193,"1f481-200d-2640-fe0f":1238,"1f481-200d-2642-fe0f":1237,"1f481":1236,"1f482-200d-2640-fe0f":1310,"1f482-200d-2642-fe0f":1309,"1f482":1308,"1f483":1382,"1f484":641,"1f485":1181,"1f486-200d-2640-fe0f":1357,"1f486-200d-2642-fe0f":1356,"1f486":1355,"1f487-200d-2640-fe0f":1360,"1f487-200d-2642-fe0f":1359,"1f487":1358,"1f488":461,"1f489":6208,"1f48a":6210,"1f48b":1115,"1f48c":1116,"1f48d":642,"1f48e":643,"1f48f":1446,"1f490":2106,"1f491":1450,"1f492":438,"1f493":1121,"1f494":1126,"1f495":1123,"1f496":1119,"1f497":1120,"1f498":1117,"1f499":1131,"1f49a":1130,"1f49b":1129,"1f49c":1132,"1f49d":1118,"1f49e":1122,"1f49f":1124,"1f4a0":6447,"1f4a1":6100,"1f4a2":1137,"1f4a3":1143,"1f4a4":1149,"1f4a5":1138,"1f4a6":1140,"1f4a7":4209,"1f4a8":1141,"1f4a9":195,"1f4aa":1183,"1f4ab":1139,"1f4ac":1144,"1f4ad":1148,"1f4ae":2108,"1f4af":1136,"1f4b0":6121,"1f4b1":6130,"1f4b2":6131,"1f4b3":6127,"1f4b4":6122,"1f4b5":6123,"1f4b6":6124,"1f4b7":6125,"1f4b8":6126,"1f4b9":6129,"1f4ba":4123,"1f4bb":677,"1f4bc":6152,"1f4bd":683,"1f4be":684,"1f4bf":685,"1f4c0":686,"1f4c1":6153,"1f4c2":6154,"1f4c3":6113,"1f4c4":6115,"1f4c5":6156,"1f4c6":6157,"1f4c7":6160,"1f4c8":6161,"1f4c9":6162,"1f4ca":6163,"1f4cb":6164,"1f4cc":6165,"1f4cd":6166,"1f4ce":6167,"1f4cf":6169,"1f4d0":6170,"1f4d1":6118,"1f4d2":6112,"1f4d3":6111,"1f4d4":6104,"1f4d5":6105,"1f4d6":6106,"1f4d7":6107,"1f4d8":6108,"1f4d9":6109,"1f4da":6110,"1f4db":6337,"1f4dc":6114,"1f4dd":6151,"1f4de":672,"1f4df":673,"1f4e0":674,"1f4e1":6207,"1f4e2":648,"1f4e3":649,"1f4e4":6136,"1f4e5":6137,"1f4e6":6138,"1f4e7":6133,"1f4e8":6134,"1f4e9":6135,"1f4ea":6140,"1f4eb":6139,"1f4ec":6141,"1f4ed":6142,"1f4ee":6143,"1f4ef":650,"1f4f0":6116,"1f4f1":669,"1f4f2":670,"1f4f3":6328,"1f4f4":6329,"1f4f5":6256,"1f4f6":6327,"1f4f7":693,"1f4f8":694,"1f4f9":695,"1f4fa":692,"1f4fb":661,"1f4fc":696,"1f4fd":690,"1f4ff":640,"1f500":6306,"1f501":6307,"1f502":6308,"1f503":6274,"1f504":6275,"1f505":6325,"1f506":6326,"1f507":644,"1f508":645,"1f509":646,"1f50a":647,"1f50b":675,"1f50c":676,"1f50d":697,"1f50e":698,"1f50f":6177,"1f510":6178,"1f511":6179,"1f512":6175,"1f513":6176,"1f514":651,"1f515":652,"1f516":6119,"1f517":6197,"1f518":6448,"1f519":6276,"1f51a":6277,"1f51b":6278,"1f51c":6279,"1f51d":6280,"1f51e":6257,"1f51f":6377,"1f520":6378,"1f521":6379,"1f522":6380,"1f523":6381,"1f524":6382,"1f525":4208,"1f526":6101,"1f527":6191,"1f528":6181,"1f529":6192,"1f52a":3120,"1f52b":6188,"1f52c":6205,"1f52d":6206,"1f52e":559,"1f52f":6292,"1f530":6338,"1f531":6336,"1f532":6450,"1f533":6449,"1f534":6417,"1f535":6421,"1f536":6441,"1f537":6442,"1f538":6443,"1f539":6444,"1f53a":6445,"1f53b":6446,"1f53c":6316,"1f53d":6318,"1f549":6283,"1f54a":268,"1f54b":446,"1f54c":442,"1f54d":444,"1f54e":6291,"1f550":4142,"1f551":4144,"1f552":4146,"1f553":4148,"1f554":4150,"1f555":4152,"1f556":4154,"1f557":4156,"1f558":4158,"1f559":4160,"1f55a":4162,"1f55b":4140,"1f55c":4143,"1f55d":4145,"1f55e":4147,"1f55f":4149,"1f560":4151,"1f561":4153,"1f562":4155,"1f563":4157,"1f564":4159,"1f565":4161,"1f566":4163,"1f567":4141,"1f56f":699,"1f570":4139,"1f573":1142,"1f574":1384,"1f575-fe0f-200d-2640-fe0f":1307,"1f575-fe0f-200d-2642-fe0f":1306,"1f575":1305,"1f576":62,"1f577":2101,"1f578":2102,"1f579":562,"1f57a":1383,"1f587":6168,"1f58a":6148,"1f58b":6147,"1f58c":6149,"1f58d":6150,"1f590":1152,"1f595":1165,"1f596":1154,"1f5a4":1134,"1f5a5":678,"1f5a8":679,"1f5b1":681,"1f5b2":682,"1f5bc":576,"1f5c2":6155,"1f5c3":6172,"1f5c4":6173,"1f5d1":6174,"1f5d2":6158,"1f5d3":6159,"1f5dc":6194,"1f5dd":6180,"1f5de":6117,"1f5e1":6186,"1f5e3":1480,"1f5e8":1146,"1f5ef":1147,"1f5f3":6144,"1f5fa":45,"1f5fb":411,"1f5fc":439,"1f5fd":440,"1f5fe":46,"1f5ff":6233,"1f600":11,"1f601":14,"1f602":18,"1f603":12,"1f604":13,"1f605":16,"1f606":15,"1f607":113,"1f608":191,"1f609":111,"1f60a":112,"1f60b":122,"1f60c":142,"1f60d":115,"1f60e":160,"1f60f":137,"1f610":134,"1f611":135,"1f612":138,"1f613":183,"1f614":143,"1f615":163,"1f616":180,"1f617":118,"1f618":117,"1f619":121,"1f61a":120,"1f61b":123,"1f61c":124,"1f61d":126,"1f61e":182,"1f61f":164,"1f620":189,"1f621":188,"1f622":177,"1f623":181,"1f624":187,"1f625":176,"1f626":172,"1f627":173,"1f628":174,"1f629":184,"1f62a":144,"1f62b":185,"1f62c":140,"1f62d":178,"1f62e":167,"1f62f":168,"1f630":175,"1f631":179,"1f632":169,"1f633":170,"1f634":146,"1f635":156,"1f636":136,"1f637":147,"1f638":1104,"1f639":1105,"1f63a":1103,"1f63b":1106,"1f63c":1107,"1f63d":1108,"1f63e":1111,"1f63f":1110,"1f640":1109,"1f641":165,"1f642":19,"1f643":110,"1f644":139,"1f645-200d-2640-fe0f":1232,"1f645-200d-2642-fe0f":1231,"1f645":1230,"1f646-200d-2640-fe0f":1235,"1f646-200d-2642-fe0f":1234,"1f646":1233,"1f647-200d-2640-fe0f":1247,"1f647-200d-2642-fe0f":1246,"1f647":1245,"1f648":1112,"1f649":1113,"1f64a":1114,"1f64b-200d-2640-fe0f":1241,"1f64b-200d-2642-fe0f":1240,"1f64b":1239,"1f64c":1175,"1f64d-200d-2640-fe0f":1226,"1f64d-200d-2642-fe0f":1225,"1f64d":1224,"1f64e-200d-2640-fe0f":1229,"1f64e-200d-2642-fe0f":1228,"1f64e":1227,"1f64f":1179,"1f680":4129,"1f681":4124,"1f682":463,"1f683":464,"1f684":465,"1f685":466,"1f686":467,"1f687":468,"1f688":469,"1f689":470,"1f68a":471,"1f68b":474,"1f68c":475,"1f68d":476,"1f68e":477,"1f68f":4100,"1f690":478,"1f691":479,"1f692":480,"1f693":481,"1f694":482,"1f695":483,"1f696":484,"1f697":485,"1f698":486,"1f699":487,"1f69a":488,"1f69b":489,"1f69c":490,"1f69d":472,"1f69e":473,"1f69f":4125,"1f6a0":4126,"1f6a1":4127,"1f6a2":4117,"1f6a3-200d-2640-fe0f":1406,"1f6a3-200d-2642-fe0f":1405,"1f6a3":1404,"1f6a4":4113,"1f6a5":4106,"1f6a6":4107,"1f6a7":4109,"1f6a8":4105,"1f6a9":72,"1f6aa":6213,"1f6ab":6250,"1f6ac":6230,"1f6ad":6252,"1f6ae":6235,"1f6af":6253,"1f6b0":6236,"1f6b1":6254,"1f6b2":497,"1f6b3":6251,"1f6b4-200d-2640-fe0f":1418,"1f6b4-200d-2642-fe0f":1417,"1f6b4":1416,"1f6b5-200d-2640-fe0f":1421,"1f6b5-200d-2642-fe0f":1420,"1f6b5":1419,"1f6b6-200d-2640-fe0f":1363,"1f6b6-200d-2642-fe0f":1362,"1f6b6":1361,"1f6b7":6255,"1f6b8":6248,"1f6b9":6238,"1f6ba":6239,"1f6bb":6240,"1f6bc":6241,"1f6bd":6217,"1f6be":6242,"1f6bf":6218,"1f6c0":1440,"1f6c1":6219,"1f6c2":6243,"1f6c3":6244,"1f6c4":6245,"1f6c5":6246,"1f6cb":6215,"1f6cc":1441,"1f6cd":624,"1f6ce":4131,"1f6cf":6214,"1f6d0":6281,"1f6d1":4108,"1f6d2":6229,"1f6d5":443,"1f6e0":6185,"1f6e1":6190,"1f6e2":4103,"1f6e3":4101,"1f6e4":4102,"1f6e5":4116,"1f6e9":4119,"1f6eb":4120,"1f6ec":4121,"1f6f0":4128,"1f6f3":4114,"1f6f4":498,"1f6f5":493,"1f6f6":4112,"1f6f7":553,"1f6f8":4130,"1f6f9":499,"1f6fa":496,"1f7e0":6418,"1f7e1":6419,"1f7e2":6420,"1f7e3":6422,"1f7e4":6423,"1f7e5":6426,"1f7e6":6430,"1f7e7":6427,"1f7e8":6428,"1f7e9":6429,"1f7ea":6431,"1f7eb":6432,"1f90d":1135,"1f90e":1133,"1f90f":1156,"1f910":132,"1f911":127,"1f912":148,"1f913":161,"1f914":131,"1f915":149,"1f916":1102,"1f917":128,"1f918":1160,"1f919":1161,"1f91a":1151,"1f91b":1172,"1f91c":1173,"1f91d":1178,"1f91e":1158,"1f91f":1159,"1f920":158,"1f921":196,"1f922":150,"1f923":17,"1f924":145,"1f925":141,"1f926-200d-2640-fe0f":1250,"1f926-200d-2642-fe0f":1249,"1f926":1248,"1f927":152,"1f928":133,"1f929":116,"1f92a":125,"1f92b":130,"1f92c":190,"1f92d":129,"1f92e":151,"1f92f":157,"1f930":1323,"1f931":1324,"1f932":1177,"1f933":1182,"1f934":1314,"1f935":1321,"1f936":1327,"1f937-200d-2640-fe0f":1253,"1f937-200d-2642-fe0f":1252,"1f937":1251,"1f938-200d-2640-fe0f":1424,"1f938-200d-2642-fe0f":1423,"1f938":1422,"1f939-200d-2640-fe0f":1436,"1f939-200d-2642-fe0f":1435,"1f939":1434,"1f93a":1394,"1f93c-200d-2640-fe0f":1427,"1f93c-200d-2642-fe0f":1426,"1f93c":1425,"1f93d-200d-2640-fe0f":1430,"1f93d-200d-2642-fe0f":1429,"1f93d":1428,"1f93e-200d-2640-fe0f":1433,"1f93e-200d-2642-fe0f":1432,"1f93e":1431,"1f93f":550,"1f940":2111,"1f941":668,"1f942":3110,"1f943":3111,"1f944":3119,"1f945":546,"1f947":525,"1f948":526,"1f949":527,"1f94a":544,"1f94b":545,"1f94c":554,"1f94d":541,"1f94e":530,"1f94f":536,"1f950":333,"1f951":318,"1f952":324,"1f953":343,"1f954":320,"1f955":321,"1f956":334,"1f957":358,"1f958":355,"1f959":351,"1f95a":353,"1f95b":3100,"1f95c":330,"1f95d":315,"1f95e":337,"1f95f":377,"1f960":378,"1f961":379,"1f962":3116,"1f963":357,"1f964":3112,"1f965":317,"1f966":326,"1f967":393,"1f968":335,"1f969":342,"1f96a":348,"1f96b":362,"1f96c":325,"1f96d":38,"1f96e":375,"1f96f":336,"1f970":114,"1f971":186,"1f973":159,"1f974":155,"1f975":153,"1f976":154,"1f97a":171,"1f97b":615,"1f97c":64,"1f97d":63,"1f97e":628,"1f97f":629,"1f980":380,"1f981":215,"1f982":2103,"1f983":260,"1f984":221,"1f985":269,"1f986":270,"1f987":250,"1f988":291,"1f989":272,"1f98a":211,"1f98b":295,"1f98c":223,"1f98d":23,"1f98e":279,"1f98f":240,"1f990":382,"1f991":383,"1f992":238,"1f993":222,"1f994":249,"1f995":283,"1f996":284,"1f997":2100,"1f998":257,"1f999":237,"1f99a":274,"1f99b":241,"1f99c":275,"1f99d":212,"1f99e":381,"1f99f":2104,"1f9a0":2105,"1f9a1":258,"1f9a2":271,"1f9a5":254,"1f9a6":255,"1f9a7":24,"1f9a8":256,"1f9a9":273,"1f9aa":384,"1f9ae":27,"1f9af":6196,"1f9b4":1193,"1f9b5":1186,"1f9b6":1187,"1f9b7":1192,"1f9b8-200d-2640-fe0f":1330,"1f9b8-200d-2642-fe0f":1329,"1f9b8":1328,"1f9b9-200d-2640-fe0f":1333,"1f9b9-200d-2642-fe0f":1332,"1f9b9":1331,"1f9ba":65,"1f9bb":1189,"1f9bc":495,"1f9bd":494,"1f9be":1184,"1f9bf":1185,"1f9c0":339,"1f9c1":392,"1f9c2":361,"1f9c3":3113,"1f9c4":327,"1f9c5":328,"1f9c6":352,"1f9c7":338,"1f9c8":360,"1f9c9":3114,"1f9ca":3115,"1f9cd-200d-2640-fe0f":1366,"1f9cd-200d-2642-fe0f":1365,"1f9cd":1364,"1f9ce-200d-2640-fe0f":1369,"1f9ce-200d-2642-fe0f":1368,"1f9ce":1367,"1f9cf-200d-2640-fe0f":1244,"1f9cf-200d-2642-fe0f":1243,"1f9cf":1242,"1f9d0":162,"1f9d1-200d-1f33e":1266,"1f9d1-200d-1f373":1269,"1f9d1-200d-1f393":1257,"1f9d1-200d-1f3a4":1287,"1f9d1-200d-1f3a8":1290,"1f9d1-200d-1f3eb":1260,"1f9d1-200d-1f3ed":1275,"1f9d1-200d-1f4bb":1284,"1f9d1-200d-1f4bc":1278,"1f9d1-200d-1f527":1272,"1f9d1-200d-1f52c":1281,"1f9d1-200d-1f680":1296,"1f9d1-200d-1f692":1299,"1f9d1-200d-1f91d-200d-1f9d1":1442,"1f9d1-200d-1f9af":1370,"1f9d1-200d-1f9b0":1212,"1f9d1-200d-1f9b1":1214,"1f9d1-200d-1f9b2":1218,"1f9d1-200d-1f9b3":1216,"1f9d1-200d-1f9bc":1373,"1f9d1-200d-1f9bd":1376,"1f9d1-200d-2695-fe0f":1254,"1f9d1-200d-2696-fe0f":1263,"1f9d1-200d-2708-fe0f":1293,"1f9d1":1202,"1f9d2":1199,"1f9d3":1221,"1f9d4":1205,"1f9d5":1320,"1f9d6-200d-2640-fe0f":1390,"1f9d6-200d-2642-fe0f":1389,"1f9d6":1388,"1f9d7-200d-2640-fe0f":1393,"1f9d7-200d-2642-fe0f":1392,"1f9d7":1391,"1f9d8-200d-2640-fe0f":1439,"1f9d8-200d-2642-fe0f":1438,"1f9d8":1437,"1f9d9-200d-2640-fe0f":1336,"1f9d9-200d-2642-fe0f":1335,"1f9d9":1334,"1f9da-200d-2640-fe0f":1339,"1f9da-200d-2642-fe0f":1338,"1f9da":1337,"1f9db-200d-2640-fe0f":1342,"1f9db-200d-2642-fe0f":1341,"1f9db":1340,"1f9dc-200d-2640-fe0f":1345,"1f9dc-200d-2642-fe0f":1344,"1f9dc":1343,"1f9dd-200d-2640-fe0f":1348,"1f9dd-200d-2642-fe0f":1347,"1f9dd":1346,"1f9de-200d-2640-fe0f":1351,"1f9de-200d-2642-fe0f":1350,"1f9de":1349,"1f9df-200d-2640-fe0f":1354,"1f9df-200d-2642-fe0f":1353,"1f9df":1352,"1f9e0":1191,"1f9e1":1128,"1f9e2":638,"1f9e3":69,"1f9e4":610,"1f9e5":611,"1f9e6":612,"1f9e7":516,"1f9e8":55,"1f9e9":565,"1f9ea":6202,"1f9eb":6203,"1f9ec":6204,"1f9ed":47,"1f9ee":687,"1f9ef":6228,"1f9f0":6199,"1f9f1":420,"1f9f2":6200,"1f9f3":4132,"1f9f4":6221,"1f9f5":578,"1f9f6":579,"1f9f7":6222,"1f9f8":566,"1f9f9":6223,"1f9fa":6224,"1f9fb":6225,"1f9fc":6226,"1f9fd":6227,"1f9fe":6128,"1f9ff":560,"1fa70":632,"1fa71":616,"1fa72":617,"1fa73":618,"1fa78":6209,"1fa79":6211,"1fa7a":6212,"1fa80":556,"1fa81":557,"1fa82":4122,"1fa90":4180,"1fa91":6216,"1fa92":6220,"1fa93":6182,"1fa94":6103,"1fa95":667,"203c":6355,"21a9":6270,"21aa":6271,"231a":4135,"231b":4133,"23cf":6323,"23e9":6310,"23ea":6314,"23eb":6317,"23ec":6319,"23ed":6311,"23ee":6315,"23ef":6312,"23f0":4136,"23f1":4137,"23f2":4138,"23f3":4134,"23f8":6320,"23f9":6321,"23fa":6322,"24c2":6391,"25aa":6439,"25ab":6440,"25b6":6309,"25c0":6313,"25fb":6436,"25fc":6435,"25fd":6438,"25fe":6437,"260e":671,"261d":1167,"262a":6289,"262e":6290,"262f":6286,"263a":119,"264a":6295,"264b":6296,"264c":6297,"264d":6298,"264e":6299,"264f":6300,"265f":571,"267b":6334,"267e":6333,"267f":6237,"269b":6282,"269c":6335,"26a0":6247,"26a1":4203,"26aa":6425,"26ab":6424,"26b0":6231,"26b1":6232,"26bd":528,"26be":529,"26c4":4206,"26c5":4186,"26c8":4187,"26ce":6305,"26cf":6183,"26d1":639,"26d3":6198,"26d4":6249,"26e9":445,"26ea":441,"26f0":49,"26f1":4202,"26f2":447,"26f3":547,"26f4":4115,"26f5":4111,"26f7":1396,"26f8":548,"26f9-fe0f-200d-2640-fe0f":1412,"26f9-fe0f-200d-2642-fe0f":1411,"26f9":1410,"26fa":448,"26fd":4104,"270a":1170,"270b":1153,"270c":1157,"270d":1180,"270f":6145,"271d":6287,"274c":6344,"274e":6345,"27a1":6262,"27b0":6349,"27bf":6350,"2b05":6266,"2b06":6260,"2b07":6264,"2b1b":6433,"2b1c":6434,"2b50":4181,"2b55":6339,"303d":6351,"1f385-1f3fb":0,"1f385-1f3fc":0,"1f385-1f3fd":0,"1f385-1f3fe":0,"1f385-1f3ff":0,"1f3c2-1f3fb":0,"1f3c2-1f3fc":0,"1f3c2-1f3fd":0,"1f3c2-1f3fe":0,"1f3c2-1f3ff":0,"1f3c3-1f3fb-200d-2640-fe0f":0,"1f3c3-1f3fc-200d-2640-fe0f":0,"1f3c3-1f3fd-200d-2640-fe0f":0,"1f3c3-1f3fe-200d-2640-fe0f":0,"1f3c3-1f3ff-200d-2640-fe0f":0,"1f3c3-1f3fb-200d-2642-fe0f":0,"1f3c3-1f3fc-200d-2642-fe0f":0,"1f3c3-1f3fd-200d-2642-fe0f":0,"1f3c3-1f3fe-200d-2642-fe0f":0,"1f3c3-1f3ff-200d-2642-fe0f":0,"1f3c3-1f3fb":0,"1f3c3-1f3fc":0,"1f3c3-1f3fd":0,"1f3c3-1f3fe":0,"1f3c3-1f3ff":0,"1f3c4-1f3fb-200d-2640-fe0f":0,"1f3c4-1f3fc-200d-2640-fe0f":0,"1f3c4-1f3fd-200d-2640-fe0f":0,"1f3c4-1f3fe-200d-2640-fe0f":0,"1f3c4-1f3ff-200d-2640-fe0f":0,"1f3c4-1f3fb-200d-2642-fe0f":0,"1f3c4-1f3fc-200d-2642-fe0f":0,"1f3c4-1f3fd-200d-2642-fe0f":0,"1f3c4-1f3fe-200d-2642-fe0f":0,"1f3c4-1f3ff-200d-2642-fe0f":0,"1f3c4-1f3fb":0,"1f3c4-1f3fc":0,"1f3c4-1f3fd":0,"1f3c4-1f3fe":0,"1f3c4-1f3ff":0,"1f3c7-1f3fb":0,"1f3c7-1f3fc":0,"1f3c7-1f3fd":0,"1f3c7-1f3fe":0,"1f3c7-1f3ff":0,"1f3ca-1f3fb-200d-2640-fe0f":0,"1f3ca-1f3fc-200d-2640-fe0f":0,"1f3ca-1f3fd-200d-2640-fe0f":0,"1f3ca-1f3fe-200d-2640-fe0f":0,"1f3ca-1f3ff-200d-2640-fe0f":0,"1f3ca-1f3fb-200d-2642-fe0f":0,"1f3ca-1f3fc-200d-2642-fe0f":0,"1f3ca-1f3fd-200d-2642-fe0f":0,"1f3ca-1f3fe-200d-2642-fe0f":0,"1f3ca-1f3ff-200d-2642-fe0f":0,"1f3ca-1f3fb":0,"1f3ca-1f3fc":0,"1f3ca-1f3fd":0,"1f3ca-1f3fe":0,"1f3ca-1f3ff":0,"1f3cb-1f3fb-200d-2640-fe0f":0,"1f3cb-1f3fc-200d-2640-fe0f":0,"1f3cb-1f3fd-200d-2640-fe0f":0,"1f3cb-1f3fe-200d-2640-fe0f":0,"1f3cb-1f3ff-200d-2640-fe0f":0,"1f3cb-1f3fb-200d-2642-fe0f":0,"1f3cb-1f3fc-200d-2642-fe0f":0,"1f3cb-1f3fd-200d-2642-fe0f":0,"1f3cb-1f3fe-200d-2642-fe0f":0,"1f3cb-1f3ff-200d-2642-fe0f":0,"1f3cb-1f3fb":0,"1f3cb-1f3fc":0,"1f3cb-1f3fd":0,"1f3cb-1f3fe":0,"1f3cb-1f3ff":0,"1f3cc-1f3fb-200d-2640-fe0f":0,"1f3cc-1f3fc-200d-2640-fe0f":0,"1f3cc-1f3fd-200d-2640-fe0f":0,"1f3cc-1f3fe-200d-2640-fe0f":0,"1f3cc-1f3ff-200d-2640-fe0f":0,"1f3cc-1f3fb-200d-2642-fe0f":0,"1f3cc-1f3fc-200d-2642-fe0f":0,"1f3cc-1f3fd-200d-2642-fe0f":0,"1f3cc-1f3fe-200d-2642-fe0f":0,"1f3cc-1f3ff-200d-2642-fe0f":0,"1f3cc-1f3fb":0,"1f3cc-1f3fc":0,"1f3cc-1f3fd":0,"1f3cc-1f3fe":0,"1f3cc-1f3ff":0,"1f442-1f3fb":0,"1f442-1f3fc":0,"1f442-1f3fd":0,"1f442-1f3fe":0,"1f442-1f3ff":0,"1f443-1f3fb":0,"1f443-1f3fc":0,"1f443-1f3fd":0,"1f443-1f3fe":0,"1f443-1f3ff":0,"1f446-1f3fb":0,"1f446-1f3fc":0,"1f446-1f3fd":0,"1f446-1f3fe":0,"1f446-1f3ff":0,"1f447-1f3fb":0,"1f447-1f3fc":0,"1f447-1f3fd":0,"1f447-1f3fe":0,"1f447-1f3ff":0,"1f448-1f3fb":0,"1f448-1f3fc":0,"1f448-1f3fd":0,"1f448-1f3fe":0,"1f448-1f3ff":0,"1f449-1f3fb":0,"1f449-1f3fc":0,"1f449-1f3fd":0,"1f449-1f3fe":0,"1f449-1f3ff":0,"1f44a-1f3fb":0,"1f44a-1f3fc":0,"1f44a-1f3fd":0,"1f44a-1f3fe":0,"1f44a-1f3ff":0,"1f44b-1f3fb":0,"1f44b-1f3fc":0,"1f44b-1f3fd":0,"1f44b-1f3fe":0,"1f44b-1f3ff":0,"1f44c-1f3fb":0,"1f44c-1f3fc":0,"1f44c-1f3fd":0,"1f44c-1f3fe":0,"1f44c-1f3ff":0,"1f44d-1f3fb":0,"1f44d-1f3fc":0,"1f44d-1f3fd":0,"1f44d-1f3fe":0,"1f44d-1f3ff":0,"1f44e-1f3fb":0,"1f44e-1f3fc":0,"1f44e-1f3fd":0,"1f44e-1f3fe":0,"1f44e-1f3ff":0,"1f44f-1f3fb":0,"1f44f-1f3fc":0,"1f44f-1f3fd":0,"1f44f-1f3fe":0,"1f44f-1f3ff":0,"1f450-1f3fb":0,"1f450-1f3fc":0,"1f450-1f3fd":0,"1f450-1f3fe":0,"1f450-1f3ff":0,"1f466-1f3fb":0,"1f466-1f3fc":0,"1f466-1f3fd":0,"1f466-1f3fe":0,"1f466-1f3ff":0,"1f467-1f3fb":0,"1f467-1f3fc":0,"1f467-1f3fd":0,"1f467-1f3fe":0,"1f467-1f3ff":0,"1f468-1f3fb-200d-1f33e":0,"1f468-1f3fc-200d-1f33e":0,"1f468-1f3fd-200d-1f33e":0,"1f468-1f3fe-200d-1f33e":0,"1f468-1f3ff-200d-1f33e":0,"1f468-1f3fb-200d-1f373":0,"1f468-1f3fc-200d-1f373":0,"1f468-1f3fd-200d-1f373":0,"1f468-1f3fe-200d-1f373":0,"1f468-1f3ff-200d-1f373":0,"1f468-1f3fb-200d-1f393":0,"1f468-1f3fc-200d-1f393":0,"1f468-1f3fd-200d-1f393":0,"1f468-1f3fe-200d-1f393":0,"1f468-1f3ff-200d-1f393":0,"1f468-1f3fb-200d-1f3a4":0,"1f468-1f3fc-200d-1f3a4":0,"1f468-1f3fd-200d-1f3a4":0,"1f468-1f3fe-200d-1f3a4":0,"1f468-1f3ff-200d-1f3a4":0,"1f468-1f3fb-200d-1f3a8":0,"1f468-1f3fc-200d-1f3a8":0,"1f468-1f3fd-200d-1f3a8":0,"1f468-1f3fe-200d-1f3a8":0,"1f468-1f3ff-200d-1f3a8":0,"1f468-1f3fb-200d-1f3eb":0,"1f468-1f3fc-200d-1f3eb":0,"1f468-1f3fd-200d-1f3eb":0,"1f468-1f3fe-200d-1f3eb":0,"1f468-1f3ff-200d-1f3eb":0,"1f468-1f3fb-200d-1f3ed":0,"1f468-1f3fc-200d-1f3ed":0,"1f468-1f3fd-200d-1f3ed":0,"1f468-1f3fe-200d-1f3ed":0,"1f468-1f3ff-200d-1f3ed":0,"1f468-1f3fb-200d-1f4bb":0,"1f468-1f3fc-200d-1f4bb":0,"1f468-1f3fd-200d-1f4bb":0,"1f468-1f3fe-200d-1f4bb":0,"1f468-1f3ff-200d-1f4bb":0,"1f468-1f3fb-200d-1f4bc":0,"1f468-1f3fc-200d-1f4bc":0,"1f468-1f3fd-200d-1f4bc":0,"1f468-1f3fe-200d-1f4bc":0,"1f468-1f3ff-200d-1f4bc":0,"1f468-1f3fb-200d-1f527":0,"1f468-1f3fc-200d-1f527":0,"1f468-1f3fd-200d-1f527":0,"1f468-1f3fe-200d-1f527":0,"1f468-1f3ff-200d-1f527":0,"1f468-1f3fb-200d-1f52c":0,"1f468-1f3fc-200d-1f52c":0,"1f468-1f3fd-200d-1f52c":0,"1f468-1f3fe-200d-1f52c":0,"1f468-1f3ff-200d-1f52c":0,"1f468-1f3fb-200d-1f680":0,"1f468-1f3fc-200d-1f680":0,"1f468-1f3fd-200d-1f680":0,"1f468-1f3fe-200d-1f680":0,"1f468-1f3ff-200d-1f680":0,"1f468-1f3fb-200d-1f692":0,"1f468-1f3fc-200d-1f692":0,"1f468-1f3fd-200d-1f692":0,"1f468-1f3fe-200d-1f692":0,"1f468-1f3ff-200d-1f692":0,"1f468-1f3fb-200d-1f9af":0,"1f468-1f3fc-200d-1f9af":0,"1f468-1f3fd-200d-1f9af":0,"1f468-1f3fe-200d-1f9af":0,"1f468-1f3ff-200d-1f9af":0,"1f468-1f3fb-200d-1f9b0":0,"1f468-1f3fc-200d-1f9b0":0,"1f468-1f3fd-200d-1f9b0":0,"1f468-1f3fe-200d-1f9b0":0,"1f468-1f3ff-200d-1f9b0":0,"1f468-1f3fb-200d-1f9b1":0,"1f468-1f3fc-200d-1f9b1":0,"1f468-1f3fd-200d-1f9b1":0,"1f468-1f3fe-200d-1f9b1":0,"1f468-1f3ff-200d-1f9b1":0,"1f468-1f3fb-200d-1f9b2":0,"1f468-1f3fc-200d-1f9b2":0,"1f468-1f3fd-200d-1f9b2":0,"1f468-1f3fe-200d-1f9b2":0,"1f468-1f3ff-200d-1f9b2":0,"1f468-1f3fb-200d-1f9b3":0,"1f468-1f3fc-200d-1f9b3":0,"1f468-1f3fd-200d-1f9b3":0,"1f468-1f3fe-200d-1f9b3":0,"1f468-1f3ff-200d-1f9b3":0,"1f468-1f3fb-200d-1f9bc":0,"1f468-1f3fc-200d-1f9bc":0,"1f468-1f3fd-200d-1f9bc":0,"1f468-1f3fe-200d-1f9bc":0,"1f468-1f3ff-200d-1f9bc":0,"1f468-1f3fb-200d-1f9bd":0,"1f468-1f3fc-200d-1f9bd":0,"1f468-1f3fd-200d-1f9bd":0,"1f468-1f3fe-200d-1f9bd":0,"1f468-1f3ff-200d-1f9bd":0,"1f468-1f3fb-200d-2695-fe0f":0,"1f468-1f3fc-200d-2695-fe0f":0,"1f468-1f3fd-200d-2695-fe0f":0,"1f468-1f3fe-200d-2695-fe0f":0,"1f468-1f3ff-200d-2695-fe0f":0,"1f468-1f3fb-200d-2696-fe0f":0,"1f468-1f3fc-200d-2696-fe0f":0,"1f468-1f3fd-200d-2696-fe0f":0,"1f468-1f3fe-200d-2696-fe0f":0,"1f468-1f3ff-200d-2696-fe0f":0,"1f468-1f3fb-200d-2708-fe0f":0,"1f468-1f3fc-200d-2708-fe0f":0,"1f468-1f3fd-200d-2708-fe0f":0,"1f468-1f3fe-200d-2708-fe0f":0,"1f468-1f3ff-200d-2708-fe0f":0,"1f468-1f3fb":0,"1f468-1f3fc":0,"1f468-1f3fd":0,"1f468-1f3fe":0,"1f468-1f3ff":0,"1f469-1f3fb-200d-1f33e":0,"1f469-1f3fc-200d-1f33e":0,"1f469-1f3fd-200d-1f33e":0,"1f469-1f3fe-200d-1f33e":0,"1f469-1f3ff-200d-1f33e":0,"1f469-1f3fb-200d-1f373":0,"1f469-1f3fc-200d-1f373":0,"1f469-1f3fd-200d-1f373":0,"1f469-1f3fe-200d-1f373":0,"1f469-1f3ff-200d-1f373":0,"1f469-1f3fb-200d-1f393":0,"1f469-1f3fc-200d-1f393":0,"1f469-1f3fd-200d-1f393":0,"1f469-1f3fe-200d-1f393":0,"1f469-1f3ff-200d-1f393":0,"1f469-1f3fb-200d-1f3a4":0,"1f469-1f3fc-200d-1f3a4":0,"1f469-1f3fd-200d-1f3a4":0,"1f469-1f3fe-200d-1f3a4":0,"1f469-1f3ff-200d-1f3a4":0,"1f469-1f3fb-200d-1f3a8":0,"1f469-1f3fc-200d-1f3a8":0,"1f469-1f3fd-200d-1f3a8":0,"1f469-1f3fe-200d-1f3a8":0,"1f469-1f3ff-200d-1f3a8":0,"1f469-1f3fb-200d-1f3eb":0,"1f469-1f3fc-200d-1f3eb":0,"1f469-1f3fd-200d-1f3eb":0,"1f469-1f3fe-200d-1f3eb":0,"1f469-1f3ff-200d-1f3eb":0,"1f469-1f3fb-200d-1f3ed":0,"1f469-1f3fc-200d-1f3ed":0,"1f469-1f3fd-200d-1f3ed":0,"1f469-1f3fe-200d-1f3ed":0,"1f469-1f3ff-200d-1f3ed":0,"1f469-1f3fb-200d-1f4bb":0,"1f469-1f3fc-200d-1f4bb":0,"1f469-1f3fd-200d-1f4bb":0,"1f469-1f3fe-200d-1f4bb":0,"1f469-1f3ff-200d-1f4bb":0,"1f469-1f3fb-200d-1f4bc":0,"1f469-1f3fc-200d-1f4bc":0,"1f469-1f3fd-200d-1f4bc":0,"1f469-1f3fe-200d-1f4bc":0,"1f469-1f3ff-200d-1f4bc":0,"1f469-1f3fb-200d-1f527":0,"1f469-1f3fc-200d-1f527":0,"1f469-1f3fd-200d-1f527":0,"1f469-1f3fe-200d-1f527":0,"1f469-1f3ff-200d-1f527":0,"1f469-1f3fb-200d-1f52c":0,"1f469-1f3fc-200d-1f52c":0,"1f469-1f3fd-200d-1f52c":0,"1f469-1f3fe-200d-1f52c":0,"1f469-1f3ff-200d-1f52c":0,"1f469-1f3fb-200d-1f680":0,"1f469-1f3fc-200d-1f680":0,"1f469-1f3fd-200d-1f680":0,"1f469-1f3fe-200d-1f680":0,"1f469-1f3ff-200d-1f680":0,"1f469-1f3fb-200d-1f692":0,"1f469-1f3fc-200d-1f692":0,"1f469-1f3fd-200d-1f692":0,"1f469-1f3fe-200d-1f692":0,"1f469-1f3ff-200d-1f692":0,"1f469-1f3fb-200d-1f9af":0,"1f469-1f3fc-200d-1f9af":0,"1f469-1f3fd-200d-1f9af":0,"1f469-1f3fe-200d-1f9af":0,"1f469-1f3ff-200d-1f9af":0,"1f469-1f3fb-200d-1f9b0":0,"1f469-1f3fc-200d-1f9b0":0,"1f469-1f3fd-200d-1f9b0":0,"1f469-1f3fe-200d-1f9b0":0,"1f469-1f3ff-200d-1f9b0":0,"1f469-1f3fb-200d-1f9b1":0,"1f469-1f3fc-200d-1f9b1":0,"1f469-1f3fd-200d-1f9b1":0,"1f469-1f3fe-200d-1f9b1":0,"1f469-1f3ff-200d-1f9b1":0,"1f469-1f3fb-200d-1f9b2":0,"1f469-1f3fc-200d-1f9b2":0,"1f469-1f3fd-200d-1f9b2":0,"1f469-1f3fe-200d-1f9b2":0,"1f469-1f3ff-200d-1f9b2":0,"1f469-1f3fb-200d-1f9b3":0,"1f469-1f3fc-200d-1f9b3":0,"1f469-1f3fd-200d-1f9b3":0,"1f469-1f3fe-200d-1f9b3":0,"1f469-1f3ff-200d-1f9b3":0,"1f469-1f3fb-200d-1f9bc":0,"1f469-1f3fc-200d-1f9bc":0,"1f469-1f3fd-200d-1f9bc":0,"1f469-1f3fe-200d-1f9bc":0,"1f469-1f3ff-200d-1f9bc":0,"1f469-1f3fb-200d-1f9bd":0,"1f469-1f3fc-200d-1f9bd":0,"1f469-1f3fd-200d-1f9bd":0,"1f469-1f3fe-200d-1f9bd":0,"1f469-1f3ff-200d-1f9bd":0,"1f469-1f3fb-200d-2695-fe0f":0,"1f469-1f3fc-200d-2695-fe0f":0,"1f469-1f3fd-200d-2695-fe0f":0,"1f469-1f3fe-200d-2695-fe0f":0,"1f469-1f3ff-200d-2695-fe0f":0,"1f469-1f3fb-200d-2696-fe0f":0,"1f469-1f3fc-200d-2696-fe0f":0,"1f469-1f3fd-200d-2696-fe0f":0,"1f469-1f3fe-200d-2696-fe0f":0,"1f469-1f3ff-200d-2696-fe0f":0,"1f469-1f3fb-200d-2708-fe0f":0,"1f469-1f3fc-200d-2708-fe0f":0,"1f469-1f3fd-200d-2708-fe0f":0,"1f469-1f3fe-200d-2708-fe0f":0,"1f469-1f3ff-200d-2708-fe0f":0,"1f469-1f3fb":0,"1f469-1f3fc":0,"1f469-1f3fd":0,"1f469-1f3fe":0,"1f469-1f3ff":0,"1f46b-1f3fb":0,"1f46b-1f3fc":0,"1f46b-1f3fd":0,"1f46b-1f3fe":0,"1f46b-1f3ff":0,"1f469-1f3fb-200d-1f91d-200d-1f468-1f3fc":0,"1f469-1f3fb-200d-1f91d-200d-1f468-1f3fd":0,"1f469-1f3fb-200d-1f91d-200d-1f468-1f3fe":0,"1f469-1f3fb-200d-1f91d-200d-1f468-1f3ff":0,"1f469-1f3fc-200d-1f91d-200d-1f468-1f3fb":0,"1f469-1f3fc-200d-1f91d-200d-1f468-1f3fd":0,"1f469-1f3fc-200d-1f91d-200d-1f468-1f3fe":0,"1f469-1f3fc-200d-1f91d-200d-1f468-1f3ff":0,"1f469-1f3fd-200d-1f91d-200d-1f468-1f3fb":0,"1f469-1f3fd-200d-1f91d-200d-1f468-1f3fc":0,"1f469-1f3fd-200d-1f91d-200d-1f468-1f3fe":0,"1f469-1f3fd-200d-1f91d-200d-1f468-1f3ff":0,"1f469-1f3fe-200d-1f91d-200d-1f468-1f3fb":0,"1f469-1f3fe-200d-1f91d-200d-1f468-1f3fc":0,"1f469-1f3fe-200d-1f91d-200d-1f468-1f3fd":0,"1f469-1f3fe-200d-1f91d-200d-1f468-1f3ff":0,"1f469-1f3ff-200d-1f91d-200d-1f468-1f3fb":0,"1f469-1f3ff-200d-1f91d-200d-1f468-1f3fc":0,"1f469-1f3ff-200d-1f91d-200d-1f468-1f3fd":0,"1f469-1f3ff-200d-1f91d-200d-1f468-1f3fe":0,"1f46c-1f3fb":0,"1f46c-1f3fc":0,"1f46c-1f3fd":0,"1f46c-1f3fe":0,"1f46c-1f3ff":0,"1f468-1f3fb-200d-1f91d-200d-1f468-1f3fc":0,"1f468-1f3fb-200d-1f91d-200d-1f468-1f3fd":0,"1f468-1f3fb-200d-1f91d-200d-1f468-1f3fe":0,"1f468-1f3fb-200d-1f91d-200d-1f468-1f3ff":0,"1f468-1f3fc-200d-1f91d-200d-1f468-1f3fb":0,"1f468-1f3fc-200d-1f91d-200d-1f468-1f3fd":0,"1f468-1f3fc-200d-1f91d-200d-1f468-1f3fe":0,"1f468-1f3fc-200d-1f91d-200d-1f468-1f3ff":0,"1f468-1f3fd-200d-1f91d-200d-1f468-1f3fb":0,"1f468-1f3fd-200d-1f91d-200d-1f468-1f3fc":0,"1f468-1f3fd-200d-1f91d-200d-1f468-1f3fe":0,"1f468-1f3fd-200d-1f91d-200d-1f468-1f3ff":0,"1f468-1f3fe-200d-1f91d-200d-1f468-1f3fb":0,"1f468-1f3fe-200d-1f91d-200d-1f468-1f3fc":0,"1f468-1f3fe-200d-1f91d-200d-1f468-1f3fd":0,"1f468-1f3fe-200d-1f91d-200d-1f468-1f3ff":0,"1f468-1f3ff-200d-1f91d-200d-1f468-1f3fb":0,"1f468-1f3ff-200d-1f91d-200d-1f468-1f3fc":0,"1f468-1f3ff-200d-1f91d-200d-1f468-1f3fd":0,"1f468-1f3ff-200d-1f91d-200d-1f468-1f3fe":0,"1f46d-1f3fb":0,"1f46d-1f3fc":0,"1f46d-1f3fd":0,"1f46d-1f3fe":0,"1f46d-1f3ff":0,"1f469-1f3fb-200d-1f91d-200d-1f469-1f3fc":0,"1f469-1f3fb-200d-1f91d-200d-1f469-1f3fd":0,"1f469-1f3fb-200d-1f91d-200d-1f469-1f3fe":0,"1f469-1f3fb-200d-1f91d-200d-1f469-1f3ff":0,"1f469-1f3fc-200d-1f91d-200d-1f469-1f3fb":0,"1f469-1f3fc-200d-1f91d-200d-1f469-1f3fd":0,"1f469-1f3fc-200d-1f91d-200d-1f469-1f3fe":0,"1f469-1f3fc-200d-1f91d-200d-1f469-1f3ff":0,"1f469-1f3fd-200d-1f91d-200d-1f469-1f3fb":0,"1f469-1f3fd-200d-1f91d-200d-1f469-1f3fc":0,"1f469-1f3fd-200d-1f91d-200d-1f469-1f3fe":0,"1f469-1f3fd-200d-1f91d-200d-1f469-1f3ff":0,"1f469-1f3fe-200d-1f91d-200d-1f469-1f3fb":0,"1f469-1f3fe-200d-1f91d-200d-1f469-1f3fc":0,"1f469-1f3fe-200d-1f91d-200d-1f469-1f3fd":0,"1f469-1f3fe-200d-1f91d-200d-1f469-1f3ff":0,"1f469-1f3ff-200d-1f91d-200d-1f469-1f3fb":0,"1f469-1f3ff-200d-1f91d-200d-1f469-1f3fc":0,"1f469-1f3ff-200d-1f91d-200d-1f469-1f3fd":0,"1f469-1f3ff-200d-1f91d-200d-1f469-1f3fe":0,"1f46e-1f3fb-200d-2640-fe0f":0,"1f46e-1f3fc-200d-2640-fe0f":0,"1f46e-1f3fd-200d-2640-fe0f":0,"1f46e-1f3fe-200d-2640-fe0f":0,"1f46e-1f3ff-200d-2640-fe0f":0,"1f46e-1f3fb-200d-2642-fe0f":0,"1f46e-1f3fc-200d-2642-fe0f":0,"1f46e-1f3fd-200d-2642-fe0f":0,"1f46e-1f3fe-200d-2642-fe0f":0,"1f46e-1f3ff-200d-2642-fe0f":0,"1f46e-1f3fb":0,"1f46e-1f3fc":0,"1f46e-1f3fd":0,"1f46e-1f3fe":0,"1f46e-1f3ff":0,"1f470-1f3fb":0,"1f470-1f3fc":0,"1f470-1f3fd":0,"1f470-1f3fe":0,"1f470-1f3ff":0,"1f471-1f3fb-200d-2640-fe0f":0,"1f471-1f3fc-200d-2640-fe0f":0,"1f471-1f3fd-200d-2640-fe0f":0,"1f471-1f3fe-200d-2640-fe0f":0,"1f471-1f3ff-200d-2640-fe0f":0,"1f471-1f3fb-200d-2642-fe0f":0,"1f471-1f3fc-200d-2642-fe0f":0,"1f471-1f3fd-200d-2642-fe0f":0,"1f471-1f3fe-200d-2642-fe0f":0,"1f471-1f3ff-200d-2642-fe0f":0,"1f471-1f3fb":0,"1f471-1f3fc":0,"1f471-1f3fd":0,"1f471-1f3fe":0,"1f471-1f3ff":0,"1f472-1f3fb":0,"1f472-1f3fc":0,"1f472-1f3fd":0,"1f472-1f3fe":0,"1f472-1f3ff":0,"1f473-1f3fb-200d-2640-fe0f":0,"1f473-1f3fc-200d-2640-fe0f":0,"1f473-1f3fd-200d-2640-fe0f":0,"1f473-1f3fe-200d-2640-fe0f":0,"1f473-1f3ff-200d-2640-fe0f":0,"1f473-1f3fb-200d-2642-fe0f":0,"1f473-1f3fc-200d-2642-fe0f":0,"1f473-1f3fd-200d-2642-fe0f":0,"1f473-1f3fe-200d-2642-fe0f":0,"1f473-1f3ff-200d-2642-fe0f":0,"1f473-1f3fb":0,"1f473-1f3fc":0,"1f473-1f3fd":0,"1f473-1f3fe":0,"1f473-1f3ff":0,"1f474-1f3fb":0,"1f474-1f3fc":0,"1f474-1f3fd":0,"1f474-1f3fe":0,"1f474-1f3ff":0,"1f475-1f3fb":0,"1f475-1f3fc":0,"1f475-1f3fd":0,"1f475-1f3fe":0,"1f475-1f3ff":0,"1f476-1f3fb":0,"1f476-1f3fc":0,"1f476-1f3fd":0,"1f476-1f3fe":0,"1f476-1f3ff":0,"1f477-1f3fb-200d-2640-fe0f":0,"1f477-1f3fc-200d-2640-fe0f":0,"1f477-1f3fd-200d-2640-fe0f":0,"1f477-1f3fe-200d-2640-fe0f":0,"1f477-1f3ff-200d-2640-fe0f":0,"1f477-1f3fb-200d-2642-fe0f":0,"1f477-1f3fc-200d-2642-fe0f":0,"1f477-1f3fd-200d-2642-fe0f":0,"1f477-1f3fe-200d-2642-fe0f":0,"1f477-1f3ff-200d-2642-fe0f":0,"1f477-1f3fb":0,"1f477-1f3fc":0,"1f477-1f3fd":0,"1f477-1f3fe":0,"1f477-1f3ff":0,"1f478-1f3fb":0,"1f478-1f3fc":0,"1f478-1f3fd":0,"1f478-1f3fe":0,"1f478-1f3ff":0,"1f47c-1f3fb":0,"1f47c-1f3fc":0,"1f47c-1f3fd":0,"1f47c-1f3fe":0,"1f47c-1f3ff":0,"1f481-1f3fb-200d-2640-fe0f":0,"1f481-1f3fc-200d-2640-fe0f":0,"1f481-1f3fd-200d-2640-fe0f":0,"1f481-1f3fe-200d-2640-fe0f":0,"1f481-1f3ff-200d-2640-fe0f":0,"1f481-1f3fb-200d-2642-fe0f":0,"1f481-1f3fc-200d-2642-fe0f":0,"1f481-1f3fd-200d-2642-fe0f":0,"1f481-1f3fe-200d-2642-fe0f":0,"1f481-1f3ff-200d-2642-fe0f":0,"1f481-1f3fb":0,"1f481-1f3fc":0,"1f481-1f3fd":0,"1f481-1f3fe":0,"1f481-1f3ff":0,"1f482-1f3fb-200d-2640-fe0f":0,"1f482-1f3fc-200d-2640-fe0f":0,"1f482-1f3fd-200d-2640-fe0f":0,"1f482-1f3fe-200d-2640-fe0f":0,"1f482-1f3ff-200d-2640-fe0f":0,"1f482-1f3fb-200d-2642-fe0f":0,"1f482-1f3fc-200d-2642-fe0f":0,"1f482-1f3fd-200d-2642-fe0f":0,"1f482-1f3fe-200d-2642-fe0f":0,"1f482-1f3ff-200d-2642-fe0f":0,"1f482-1f3fb":0,"1f482-1f3fc":0,"1f482-1f3fd":0,"1f482-1f3fe":0,"1f482-1f3ff":0,"1f483-1f3fb":0,"1f483-1f3fc":0,"1f483-1f3fd":0,"1f483-1f3fe":0,"1f483-1f3ff":0,"1f485-1f3fb":0,"1f485-1f3fc":0,"1f485-1f3fd":0,"1f485-1f3fe":0,"1f485-1f3ff":0,"1f486-1f3fb-200d-2640-fe0f":0,"1f486-1f3fc-200d-2640-fe0f":0,"1f486-1f3fd-200d-2640-fe0f":0,"1f486-1f3fe-200d-2640-fe0f":0,"1f486-1f3ff-200d-2640-fe0f":0,"1f486-1f3fb-200d-2642-fe0f":0,"1f486-1f3fc-200d-2642-fe0f":0,"1f486-1f3fd-200d-2642-fe0f":0,"1f486-1f3fe-200d-2642-fe0f":0,"1f486-1f3ff-200d-2642-fe0f":0,"1f486-1f3fb":0,"1f486-1f3fc":0,"1f486-1f3fd":0,"1f486-1f3fe":0,"1f486-1f3ff":0,"1f487-1f3fb-200d-2640-fe0f":0,"1f487-1f3fc-200d-2640-fe0f":0,"1f487-1f3fd-200d-2640-fe0f":0,"1f487-1f3fe-200d-2640-fe0f":0,"1f487-1f3ff-200d-2640-fe0f":0,"1f487-1f3fb-200d-2642-fe0f":0,"1f487-1f3fc-200d-2642-fe0f":0,"1f487-1f3fd-200d-2642-fe0f":0,"1f487-1f3fe-200d-2642-fe0f":0,"1f487-1f3ff-200d-2642-fe0f":0,"1f487-1f3fb":0,"1f487-1f3fc":0,"1f487-1f3fd":0,"1f487-1f3fe":0,"1f487-1f3ff":0,"1f4aa-1f3fb":0,"1f4aa-1f3fc":0,"1f4aa-1f3fd":0,"1f4aa-1f3fe":0,"1f4aa-1f3ff":0,"1f574-1f3fb":0,"1f574-1f3fc":0,"1f574-1f3fd":0,"1f574-1f3fe":0,"1f574-1f3ff":0,"1f575-1f3fb-200d-2640-fe0f":0,"1f575-1f3fc-200d-2640-fe0f":0,"1f575-1f3fd-200d-2640-fe0f":0,"1f575-1f3fe-200d-2640-fe0f":0,"1f575-1f3ff-200d-2640-fe0f":0,"1f575-1f3fb-200d-2642-fe0f":0,"1f575-1f3fc-200d-2642-fe0f":0,"1f575-1f3fd-200d-2642-fe0f":0,"1f575-1f3fe-200d-2642-fe0f":0,"1f575-1f3ff-200d-2642-fe0f":0,"1f575-1f3fb":0,"1f575-1f3fc":0,"1f575-1f3fd":0,"1f575-1f3fe":0,"1f575-1f3ff":0,"1f57a-1f3fb":0,"1f57a-1f3fc":0,"1f57a-1f3fd":0,"1f57a-1f3fe":0,"1f57a-1f3ff":0,"1f590-1f3fb":0,"1f590-1f3fc":0,"1f590-1f3fd":0,"1f590-1f3fe":0,"1f590-1f3ff":0,"1f595-1f3fb":0,"1f595-1f3fc":0,"1f595-1f3fd":0,"1f595-1f3fe":0,"1f595-1f3ff":0,"1f596-1f3fb":0,"1f596-1f3fc":0,"1f596-1f3fd":0,"1f596-1f3fe":0,"1f596-1f3ff":0,"1f645-1f3fb-200d-2640-fe0f":0,"1f645-1f3fc-200d-2640-fe0f":0,"1f645-1f3fd-200d-2640-fe0f":0,"1f645-1f3fe-200d-2640-fe0f":0,"1f645-1f3ff-200d-2640-fe0f":0,"1f645-1f3fb-200d-2642-fe0f":0,"1f645-1f3fc-200d-2642-fe0f":0,"1f645-1f3fd-200d-2642-fe0f":0,"1f645-1f3fe-200d-2642-fe0f":0,"1f645-1f3ff-200d-2642-fe0f":0,"1f645-1f3fb":0,"1f645-1f3fc":0,"1f645-1f3fd":0,"1f645-1f3fe":0,"1f645-1f3ff":0,"1f646-1f3fb-200d-2640-fe0f":0,"1f646-1f3fc-200d-2640-fe0f":0,"1f646-1f3fd-200d-2640-fe0f":0,"1f646-1f3fe-200d-2640-fe0f":0,"1f646-1f3ff-200d-2640-fe0f":0,"1f646-1f3fb-200d-2642-fe0f":0,"1f646-1f3fc-200d-2642-fe0f":0,"1f646-1f3fd-200d-2642-fe0f":0,"1f646-1f3fe-200d-2642-fe0f":0,"1f646-1f3ff-200d-2642-fe0f":0,"1f646-1f3fb":0,"1f646-1f3fc":0,"1f646-1f3fd":0,"1f646-1f3fe":0,"1f646-1f3ff":0,"1f647-1f3fb-200d-2640-fe0f":0,"1f647-1f3fc-200d-2640-fe0f":0,"1f647-1f3fd-200d-2640-fe0f":0,"1f647-1f3fe-200d-2640-fe0f":0,"1f647-1f3ff-200d-2640-fe0f":0,"1f647-1f3fb-200d-2642-fe0f":0,"1f647-1f3fc-200d-2642-fe0f":0,"1f647-1f3fd-200d-2642-fe0f":0,"1f647-1f3fe-200d-2642-fe0f":0,"1f647-1f3ff-200d-2642-fe0f":0,"1f647-1f3fb":0,"1f647-1f3fc":0,"1f647-1f3fd":0,"1f647-1f3fe":0,"1f647-1f3ff":0,"1f64b-1f3fb-200d-2640-fe0f":0,"1f64b-1f3fc-200d-2640-fe0f":0,"1f64b-1f3fd-200d-2640-fe0f":0,"1f64b-1f3fe-200d-2640-fe0f":0,"1f64b-1f3ff-200d-2640-fe0f":0,"1f64b-1f3fb-200d-2642-fe0f":0,"1f64b-1f3fc-200d-2642-fe0f":0,"1f64b-1f3fd-200d-2642-fe0f":0,"1f64b-1f3fe-200d-2642-fe0f":0,"1f64b-1f3ff-200d-2642-fe0f":0,"1f64b-1f3fb":0,"1f64b-1f3fc":0,"1f64b-1f3fd":0,"1f64b-1f3fe":0,"1f64b-1f3ff":0,"1f64c-1f3fb":0,"1f64c-1f3fc":0,"1f64c-1f3fd":0,"1f64c-1f3fe":0,"1f64c-1f3ff":0,"1f64d-1f3fb-200d-2640-fe0f":0,"1f64d-1f3fc-200d-2640-fe0f":0,"1f64d-1f3fd-200d-2640-fe0f":0,"1f64d-1f3fe-200d-2640-fe0f":0,"1f64d-1f3ff-200d-2640-fe0f":0,"1f64d-1f3fb-200d-2642-fe0f":0,"1f64d-1f3fc-200d-2642-fe0f":0,"1f64d-1f3fd-200d-2642-fe0f":0,"1f64d-1f3fe-200d-2642-fe0f":0,"1f64d-1f3ff-200d-2642-fe0f":0,"1f64d-1f3fb":0,"1f64d-1f3fc":0,"1f64d-1f3fd":0,"1f64d-1f3fe":0,"1f64d-1f3ff":0,"1f64e-1f3fb-200d-2640-fe0f":0,"1f64e-1f3fc-200d-2640-fe0f":0,"1f64e-1f3fd-200d-2640-fe0f":0,"1f64e-1f3fe-200d-2640-fe0f":0,"1f64e-1f3ff-200d-2640-fe0f":0,"1f64e-1f3fb-200d-2642-fe0f":0,"1f64e-1f3fc-200d-2642-fe0f":0,"1f64e-1f3fd-200d-2642-fe0f":0,"1f64e-1f3fe-200d-2642-fe0f":0,"1f64e-1f3ff-200d-2642-fe0f":0,"1f64e-1f3fb":0,"1f64e-1f3fc":0,"1f64e-1f3fd":0,"1f64e-1f3fe":0,"1f64e-1f3ff":0,"1f64f-1f3fb":0,"1f64f-1f3fc":0,"1f64f-1f3fd":0,"1f64f-1f3fe":0,"1f64f-1f3ff":0,"1f6a3-1f3fb-200d-2640-fe0f":0,"1f6a3-1f3fc-200d-2640-fe0f":0,"1f6a3-1f3fd-200d-2640-fe0f":0,"1f6a3-1f3fe-200d-2640-fe0f":0,"1f6a3-1f3ff-200d-2640-fe0f":0,"1f6a3-1f3fb-200d-2642-fe0f":0,"1f6a3-1f3fc-200d-2642-fe0f":0,"1f6a3-1f3fd-200d-2642-fe0f":0,"1f6a3-1f3fe-200d-2642-fe0f":0,"1f6a3-1f3ff-200d-2642-fe0f":0,"1f6a3-1f3fb":0,"1f6a3-1f3fc":0,"1f6a3-1f3fd":0,"1f6a3-1f3fe":0,"1f6a3-1f3ff":0,"1f6b4-1f3fb-200d-2640-fe0f":0,"1f6b4-1f3fc-200d-2640-fe0f":0,"1f6b4-1f3fd-200d-2640-fe0f":0,"1f6b4-1f3fe-200d-2640-fe0f":0,"1f6b4-1f3ff-200d-2640-fe0f":0,"1f6b4-1f3fb-200d-2642-fe0f":0,"1f6b4-1f3fc-200d-2642-fe0f":0,"1f6b4-1f3fd-200d-2642-fe0f":0,"1f6b4-1f3fe-200d-2642-fe0f":0,"1f6b4-1f3ff-200d-2642-fe0f":0,"1f6b4-1f3fb":0,"1f6b4-1f3fc":0,"1f6b4-1f3fd":0,"1f6b4-1f3fe":0,"1f6b4-1f3ff":0,"1f6b5-1f3fb-200d-2640-fe0f":0,"1f6b5-1f3fc-200d-2640-fe0f":0,"1f6b5-1f3fd-200d-2640-fe0f":0,"1f6b5-1f3fe-200d-2640-fe0f":0,"1f6b5-1f3ff-200d-2640-fe0f":0,"1f6b5-1f3fb-200d-2642-fe0f":0,"1f6b5-1f3fc-200d-2642-fe0f":0,"1f6b5-1f3fd-200d-2642-fe0f":0,"1f6b5-1f3fe-200d-2642-fe0f":0,"1f6b5-1f3ff-200d-2642-fe0f":0,"1f6b5-1f3fb":0,"1f6b5-1f3fc":0,"1f6b5-1f3fd":0,"1f6b5-1f3fe":0,"1f6b5-1f3ff":0,"1f6b6-1f3fb-200d-2640-fe0f":0,"1f6b6-1f3fc-200d-2640-fe0f":0,"1f6b6-1f3fd-200d-2640-fe0f":0,"1f6b6-1f3fe-200d-2640-fe0f":0,"1f6b6-1f3ff-200d-2640-fe0f":0,"1f6b6-1f3fb-200d-2642-fe0f":0,"1f6b6-1f3fc-200d-2642-fe0f":0,"1f6b6-1f3fd-200d-2642-fe0f":0,"1f6b6-1f3fe-200d-2642-fe0f":0,"1f6b6-1f3ff-200d-2642-fe0f":0,"1f6b6-1f3fb":0,"1f6b6-1f3fc":0,"1f6b6-1f3fd":0,"1f6b6-1f3fe":0,"1f6b6-1f3ff":0,"1f6c0-1f3fb":0,"1f6c0-1f3fc":0,"1f6c0-1f3fd":0,"1f6c0-1f3fe":0,"1f6c0-1f3ff":0,"1f6cc-1f3fb":0,"1f6cc-1f3fc":0,"1f6cc-1f3fd":0,"1f6cc-1f3fe":0,"1f6cc-1f3ff":0,"1f90f-1f3fb":0,"1f90f-1f3fc":0,"1f90f-1f3fd":0,"1f90f-1f3fe":0,"1f90f-1f3ff":0,"1f918-1f3fb":0,"1f918-1f3fc":0,"1f918-1f3fd":0,"1f918-1f3fe":0,"1f918-1f3ff":0,"1f919-1f3fb":0,"1f919-1f3fc":0,"1f919-1f3fd":0,"1f919-1f3fe":0,"1f919-1f3ff":0,"1f91a-1f3fb":0,"1f91a-1f3fc":0,"1f91a-1f3fd":0,"1f91a-1f3fe":0,"1f91a-1f3ff":0,"1f91b-1f3fb":0,"1f91b-1f3fc":0,"1f91b-1f3fd":0,"1f91b-1f3fe":0,"1f91b-1f3ff":0,"1f91c-1f3fb":0,"1f91c-1f3fc":0,"1f91c-1f3fd":0,"1f91c-1f3fe":0,"1f91c-1f3ff":0,"1f91e-1f3fb":0,"1f91e-1f3fc":0,"1f91e-1f3fd":0,"1f91e-1f3fe":0,"1f91e-1f3ff":0,"1f91f-1f3fb":0,"1f91f-1f3fc":0,"1f91f-1f3fd":0,"1f91f-1f3fe":0,"1f91f-1f3ff":0,"1f926-1f3fb-200d-2640-fe0f":0,"1f926-1f3fc-200d-2640-fe0f":0,"1f926-1f3fd-200d-2640-fe0f":0,"1f926-1f3fe-200d-2640-fe0f":0,"1f926-1f3ff-200d-2640-fe0f":0,"1f926-1f3fb-200d-2642-fe0f":0,"1f926-1f3fc-200d-2642-fe0f":0,"1f926-1f3fd-200d-2642-fe0f":0,"1f926-1f3fe-200d-2642-fe0f":0,"1f926-1f3ff-200d-2642-fe0f":0,"1f926-1f3fb":0,"1f926-1f3fc":0,"1f926-1f3fd":0,"1f926-1f3fe":0,"1f926-1f3ff":0,"1f930-1f3fb":0,"1f930-1f3fc":0,"1f930-1f3fd":0,"1f930-1f3fe":0,"1f930-1f3ff":0,"1f931-1f3fb":0,"1f931-1f3fc":0,"1f931-1f3fd":0,"1f931-1f3fe":0,"1f931-1f3ff":0,"1f932-1f3fb":0,"1f932-1f3fc":0,"1f932-1f3fd":0,"1f932-1f3fe":0,"1f932-1f3ff":0,"1f933-1f3fb":0,"1f933-1f3fc":0,"1f933-1f3fd":0,"1f933-1f3fe":0,"1f933-1f3ff":0,"1f934-1f3fb":0,"1f934-1f3fc":0,"1f934-1f3fd":0,"1f934-1f3fe":0,"1f934-1f3ff":0,"1f935-1f3fb":0,"1f935-1f3fc":0,"1f935-1f3fd":0,"1f935-1f3fe":0,"1f935-1f3ff":0,"1f936-1f3fb":0,"1f936-1f3fc":0,"1f936-1f3fd":0,"1f936-1f3fe":0,"1f936-1f3ff":0,"1f937-1f3fb-200d-2640-fe0f":0,"1f937-1f3fc-200d-2640-fe0f":0,"1f937-1f3fd-200d-2640-fe0f":0,"1f937-1f3fe-200d-2640-fe0f":0,"1f937-1f3ff-200d-2640-fe0f":0,"1f937-1f3fb-200d-2642-fe0f":0,"1f937-1f3fc-200d-2642-fe0f":0,"1f937-1f3fd-200d-2642-fe0f":0,"1f937-1f3fe-200d-2642-fe0f":0,"1f937-1f3ff-200d-2642-fe0f":0,"1f937-1f3fb":0,"1f937-1f3fc":0,"1f937-1f3fd":0,"1f937-1f3fe":0,"1f937-1f3ff":0,"1f938-1f3fb-200d-2640-fe0f":0,"1f938-1f3fc-200d-2640-fe0f":0,"1f938-1f3fd-200d-2640-fe0f":0,"1f938-1f3fe-200d-2640-fe0f":0,"1f938-1f3ff-200d-2640-fe0f":0,"1f938-1f3fb-200d-2642-fe0f":0,"1f938-1f3fc-200d-2642-fe0f":0,"1f938-1f3fd-200d-2642-fe0f":0,"1f938-1f3fe-200d-2642-fe0f":0,"1f938-1f3ff-200d-2642-fe0f":0,"1f938-1f3fb":0,"1f938-1f3fc":0,"1f938-1f3fd":0,"1f938-1f3fe":0,"1f938-1f3ff":0,"1f939-1f3fb-200d-2640-fe0f":0,"1f939-1f3fc-200d-2640-fe0f":0,"1f939-1f3fd-200d-2640-fe0f":0,"1f939-1f3fe-200d-2640-fe0f":0,"1f939-1f3ff-200d-2640-fe0f":0,"1f939-1f3fb-200d-2642-fe0f":0,"1f939-1f3fc-200d-2642-fe0f":0,"1f939-1f3fd-200d-2642-fe0f":0,"1f939-1f3fe-200d-2642-fe0f":0,"1f939-1f3ff-200d-2642-fe0f":0,"1f939-1f3fb":0,"1f939-1f3fc":0,"1f939-1f3fd":0,"1f939-1f3fe":0,"1f939-1f3ff":0,"1f93d-1f3fb-200d-2640-fe0f":0,"1f93d-1f3fc-200d-2640-fe0f":0,"1f93d-1f3fd-200d-2640-fe0f":0,"1f93d-1f3fe-200d-2640-fe0f":0,"1f93d-1f3ff-200d-2640-fe0f":0,"1f93d-1f3fb-200d-2642-fe0f":0,"1f93d-1f3fc-200d-2642-fe0f":0,"1f93d-1f3fd-200d-2642-fe0f":0,"1f93d-1f3fe-200d-2642-fe0f":0,"1f93d-1f3ff-200d-2642-fe0f":0,"1f93d-1f3fb":0,"1f93d-1f3fc":0,"1f93d-1f3fd":0,"1f93d-1f3fe":0,"1f93d-1f3ff":0,"1f93e-1f3fb-200d-2640-fe0f":0,"1f93e-1f3fc-200d-2640-fe0f":0,"1f93e-1f3fd-200d-2640-fe0f":0,"1f93e-1f3fe-200d-2640-fe0f":0,"1f93e-1f3ff-200d-2640-fe0f":0,"1f93e-1f3fb-200d-2642-fe0f":0,"1f93e-1f3fc-200d-2642-fe0f":0,"1f93e-1f3fd-200d-2642-fe0f":0,"1f93e-1f3fe-200d-2642-fe0f":0,"1f93e-1f3ff-200d-2642-fe0f":0,"1f93e-1f3fb":0,"1f93e-1f3fc":0,"1f93e-1f3fd":0,"1f93e-1f3fe":0,"1f93e-1f3ff":0,"1f9b5-1f3fb":0,"1f9b5-1f3fc":0,"1f9b5-1f3fd":0,"1f9b5-1f3fe":0,"1f9b5-1f3ff":0,"1f9b6-1f3fb":0,"1f9b6-1f3fc":0,"1f9b6-1f3fd":0,"1f9b6-1f3fe":0,"1f9b6-1f3ff":0,"1f9b8-1f3fb-200d-2640-fe0f":0,"1f9b8-1f3fc-200d-2640-fe0f":0,"1f9b8-1f3fd-200d-2640-fe0f":0,"1f9b8-1f3fe-200d-2640-fe0f":0,"1f9b8-1f3ff-200d-2640-fe0f":0,"1f9b8-1f3fb-200d-2642-fe0f":0,"1f9b8-1f3fc-200d-2642-fe0f":0,"1f9b8-1f3fd-200d-2642-fe0f":0,"1f9b8-1f3fe-200d-2642-fe0f":0,"1f9b8-1f3ff-200d-2642-fe0f":0,"1f9b8-1f3fb":0,"1f9b8-1f3fc":0,"1f9b8-1f3fd":0,"1f9b8-1f3fe":0,"1f9b8-1f3ff":0,"1f9b9-1f3fb-200d-2640-fe0f":0,"1f9b9-1f3fc-200d-2640-fe0f":0,"1f9b9-1f3fd-200d-2640-fe0f":0,"1f9b9-1f3fe-200d-2640-fe0f":0,"1f9b9-1f3ff-200d-2640-fe0f":0,"1f9b9-1f3fb-200d-2642-fe0f":0,"1f9b9-1f3fc-200d-2642-fe0f":0,"1f9b9-1f3fd-200d-2642-fe0f":0,"1f9b9-1f3fe-200d-2642-fe0f":0,"1f9b9-1f3ff-200d-2642-fe0f":0,"1f9b9-1f3fb":0,"1f9b9-1f3fc":0,"1f9b9-1f3fd":0,"1f9b9-1f3fe":0,"1f9b9-1f3ff":0,"1f9bb-1f3fb":0,"1f9bb-1f3fc":0,"1f9bb-1f3fd":0,"1f9bb-1f3fe":0,"1f9bb-1f3ff":0,"1f9cd-1f3fb-200d-2640-fe0f":0,"1f9cd-1f3fc-200d-2640-fe0f":0,"1f9cd-1f3fd-200d-2640-fe0f":0,"1f9cd-1f3fe-200d-2640-fe0f":0,"1f9cd-1f3ff-200d-2640-fe0f":0,"1f9cd-1f3fb-200d-2642-fe0f":0,"1f9cd-1f3fc-200d-2642-fe0f":0,"1f9cd-1f3fd-200d-2642-fe0f":0,"1f9cd-1f3fe-200d-2642-fe0f":0,"1f9cd-1f3ff-200d-2642-fe0f":0,"1f9cd-1f3fb":0,"1f9cd-1f3fc":0,"1f9cd-1f3fd":0,"1f9cd-1f3fe":0,"1f9cd-1f3ff":0,"1f9ce-1f3fb-200d-2640-fe0f":0,"1f9ce-1f3fc-200d-2640-fe0f":0,"1f9ce-1f3fd-200d-2640-fe0f":0,"1f9ce-1f3fe-200d-2640-fe0f":0,"1f9ce-1f3ff-200d-2640-fe0f":0,"1f9ce-1f3fb-200d-2642-fe0f":0,"1f9ce-1f3fc-200d-2642-fe0f":0,"1f9ce-1f3fd-200d-2642-fe0f":0,"1f9ce-1f3fe-200d-2642-fe0f":0,"1f9ce-1f3ff-200d-2642-fe0f":0,"1f9ce-1f3fb":0,"1f9ce-1f3fc":0,"1f9ce-1f3fd":0,"1f9ce-1f3fe":0,"1f9ce-1f3ff":0,"1f9cf-1f3fb-200d-2640-fe0f":0,"1f9cf-1f3fc-200d-2640-fe0f":0,"1f9cf-1f3fd-200d-2640-fe0f":0,"1f9cf-1f3fe-200d-2640-fe0f":0,"1f9cf-1f3ff-200d-2640-fe0f":0,"1f9cf-1f3fb-200d-2642-fe0f":0,"1f9cf-1f3fc-200d-2642-fe0f":0,"1f9cf-1f3fd-200d-2642-fe0f":0,"1f9cf-1f3fe-200d-2642-fe0f":0,"1f9cf-1f3ff-200d-2642-fe0f":0,"1f9cf-1f3fb":0,"1f9cf-1f3fc":0,"1f9cf-1f3fd":0,"1f9cf-1f3fe":0,"1f9cf-1f3ff":0,"1f9d1-1f3fb-200d-1f33e":0,"1f9d1-1f3fc-200d-1f33e":0,"1f9d1-1f3fd-200d-1f33e":0,"1f9d1-1f3fe-200d-1f33e":0,"1f9d1-1f3ff-200d-1f33e":0,"1f9d1-1f3fb-200d-1f373":0,"1f9d1-1f3fc-200d-1f373":0,"1f9d1-1f3fd-200d-1f373":0,"1f9d1-1f3fe-200d-1f373":0,"1f9d1-1f3ff-200d-1f373":0,"1f9d1-1f3fb-200d-1f393":0,"1f9d1-1f3fc-200d-1f393":0,"1f9d1-1f3fd-200d-1f393":0,"1f9d1-1f3fe-200d-1f393":0,"1f9d1-1f3ff-200d-1f393":0,"1f9d1-1f3fb-200d-1f3a4":0,"1f9d1-1f3fc-200d-1f3a4":0,"1f9d1-1f3fd-200d-1f3a4":0,"1f9d1-1f3fe-200d-1f3a4":0,"1f9d1-1f3ff-200d-1f3a4":0,"1f9d1-1f3fb-200d-1f3a8":0,"1f9d1-1f3fc-200d-1f3a8":0,"1f9d1-1f3fd-200d-1f3a8":0,"1f9d1-1f3fe-200d-1f3a8":0,"1f9d1-1f3ff-200d-1f3a8":0,"1f9d1-1f3fb-200d-1f3eb":0,"1f9d1-1f3fc-200d-1f3eb":0,"1f9d1-1f3fd-200d-1f3eb":0,"1f9d1-1f3fe-200d-1f3eb":0,"1f9d1-1f3ff-200d-1f3eb":0,"1f9d1-1f3fb-200d-1f3ed":0,"1f9d1-1f3fc-200d-1f3ed":0,"1f9d1-1f3fd-200d-1f3ed":0,"1f9d1-1f3fe-200d-1f3ed":0,"1f9d1-1f3ff-200d-1f3ed":0,"1f9d1-1f3fb-200d-1f4bb":0,"1f9d1-1f3fc-200d-1f4bb":0,"1f9d1-1f3fd-200d-1f4bb":0,"1f9d1-1f3fe-200d-1f4bb":0,"1f9d1-1f3ff-200d-1f4bb":0,"1f9d1-1f3fb-200d-1f4bc":0,"1f9d1-1f3fc-200d-1f4bc":0,"1f9d1-1f3fd-200d-1f4bc":0,"1f9d1-1f3fe-200d-1f4bc":0,"1f9d1-1f3ff-200d-1f4bc":0,"1f9d1-1f3fb-200d-1f527":0,"1f9d1-1f3fc-200d-1f527":0,"1f9d1-1f3fd-200d-1f527":0,"1f9d1-1f3fe-200d-1f527":0,"1f9d1-1f3ff-200d-1f527":0,"1f9d1-1f3fb-200d-1f52c":0,"1f9d1-1f3fc-200d-1f52c":0,"1f9d1-1f3fd-200d-1f52c":0,"1f9d1-1f3fe-200d-1f52c":0,"1f9d1-1f3ff-200d-1f52c":0,"1f9d1-1f3fb-200d-1f680":0,"1f9d1-1f3fc-200d-1f680":0,"1f9d1-1f3fd-200d-1f680":0,"1f9d1-1f3fe-200d-1f680":0,"1f9d1-1f3ff-200d-1f680":0,"1f9d1-1f3fb-200d-1f692":0,"1f9d1-1f3fc-200d-1f692":0,"1f9d1-1f3fd-200d-1f692":0,"1f9d1-1f3fe-200d-1f692":0,"1f9d1-1f3ff-200d-1f692":0,"1f9d1-1f3fb-200d-1f91d-200d-1f9d1-1f3fb":0,"1f9d1-1f3fb-200d-1f91d-200d-1f9d1-1f3fc":0,"1f9d1-1f3fb-200d-1f91d-200d-1f9d1-1f3fd":0,"1f9d1-1f3fb-200d-1f91d-200d-1f9d1-1f3fe":0,"1f9d1-1f3fb-200d-1f91d-200d-1f9d1-1f3ff":0,"1f9d1-1f3fc-200d-1f91d-200d-1f9d1-1f3fb":0,"1f9d1-1f3fc-200d-1f91d-200d-1f9d1-1f3fc":0,"1f9d1-1f3fc-200d-1f91d-200d-1f9d1-1f3fd":0,"1f9d1-1f3fc-200d-1f91d-200d-1f9d1-1f3fe":0,"1f9d1-1f3fc-200d-1f91d-200d-1f9d1-1f3ff":0,"1f9d1-1f3fd-200d-1f91d-200d-1f9d1-1f3fb":0,"1f9d1-1f3fd-200d-1f91d-200d-1f9d1-1f3fc":0,"1f9d1-1f3fd-200d-1f91d-200d-1f9d1-1f3fd":0,"1f9d1-1f3fd-200d-1f91d-200d-1f9d1-1f3fe":0,"1f9d1-1f3fd-200d-1f91d-200d-1f9d1-1f3ff":0,"1f9d1-1f3fe-200d-1f91d-200d-1f9d1-1f3fb":0,"1f9d1-1f3fe-200d-1f91d-200d-1f9d1-1f3fc":0,"1f9d1-1f3fe-200d-1f91d-200d-1f9d1-1f3fd":0,"1f9d1-1f3fe-200d-1f91d-200d-1f9d1-1f3fe":0,"1f9d1-1f3fe-200d-1f91d-200d-1f9d1-1f3ff":0,"1f9d1-1f3ff-200d-1f91d-200d-1f9d1-1f3fb":0,"1f9d1-1f3ff-200d-1f91d-200d-1f9d1-1f3fc":0,"1f9d1-1f3ff-200d-1f91d-200d-1f9d1-1f3fd":0,"1f9d1-1f3ff-200d-1f91d-200d-1f9d1-1f3fe":0,"1f9d1-1f3ff-200d-1f91d-200d-1f9d1-1f3ff":0,"1f9d1-1f3fb-200d-1f9af":0,"1f9d1-1f3fc-200d-1f9af":0,"1f9d1-1f3fd-200d-1f9af":0,"1f9d1-1f3fe-200d-1f9af":0,"1f9d1-1f3ff-200d-1f9af":0,"1f9d1-1f3fb-200d-1f9b0":0,"1f9d1-1f3fc-200d-1f9b0":0,"1f9d1-1f3fd-200d-1f9b0":0,"1f9d1-1f3fe-200d-1f9b0":0,"1f9d1-1f3ff-200d-1f9b0":0,"1f9d1-1f3fb-200d-1f9b1":0,"1f9d1-1f3fc-200d-1f9b1":0,"1f9d1-1f3fd-200d-1f9b1":0,"1f9d1-1f3fe-200d-1f9b1":0,"1f9d1-1f3ff-200d-1f9b1":0,"1f9d1-1f3fb-200d-1f9b2":0,"1f9d1-1f3fc-200d-1f9b2":0,"1f9d1-1f3fd-200d-1f9b2":0,"1f9d1-1f3fe-200d-1f9b2":0,"1f9d1-1f3ff-200d-1f9b2":0,"1f9d1-1f3fb-200d-1f9b3":0,"1f9d1-1f3fc-200d-1f9b3":0,"1f9d1-1f3fd-200d-1f9b3":0,"1f9d1-1f3fe-200d-1f9b3":0,"1f9d1-1f3ff-200d-1f9b3":0,"1f9d1-1f3fb-200d-1f9bc":0,"1f9d1-1f3fc-200d-1f9bc":0,"1f9d1-1f3fd-200d-1f9bc":0,"1f9d1-1f3fe-200d-1f9bc":0,"1f9d1-1f3ff-200d-1f9bc":0,"1f9d1-1f3fb-200d-1f9bd":0,"1f9d1-1f3fc-200d-1f9bd":0,"1f9d1-1f3fd-200d-1f9bd":0,"1f9d1-1f3fe-200d-1f9bd":0,"1f9d1-1f3ff-200d-1f9bd":0,"1f9d1-1f3fb-200d-2695-fe0f":0,"1f9d1-1f3fc-200d-2695-fe0f":0,"1f9d1-1f3fd-200d-2695-fe0f":0,"1f9d1-1f3fe-200d-2695-fe0f":0,"1f9d1-1f3ff-200d-2695-fe0f":0,"1f9d1-1f3fb-200d-2696-fe0f":0,"1f9d1-1f3fc-200d-2696-fe0f":0,"1f9d1-1f3fd-200d-2696-fe0f":0,"1f9d1-1f3fe-200d-2696-fe0f":0,"1f9d1-1f3ff-200d-2696-fe0f":0,"1f9d1-1f3fb-200d-2708-fe0f":0,"1f9d1-1f3fc-200d-2708-fe0f":0,"1f9d1-1f3fd-200d-2708-fe0f":0,"1f9d1-1f3fe-200d-2708-fe0f":0,"1f9d1-1f3ff-200d-2708-fe0f":0,"1f9d1-1f3fb":0,"1f9d1-1f3fc":0,"1f9d1-1f3fd":0,"1f9d1-1f3fe":0,"1f9d1-1f3ff":0,"1f9d2-1f3fb":0,"1f9d2-1f3fc":0,"1f9d2-1f3fd":0,"1f9d2-1f3fe":0,"1f9d2-1f3ff":0,"1f9d3-1f3fb":0,"1f9d3-1f3fc":0,"1f9d3-1f3fd":0,"1f9d3-1f3fe":0,"1f9d3-1f3ff":0,"1f9d4-1f3fb":0,"1f9d4-1f3fc":0,"1f9d4-1f3fd":0,"1f9d4-1f3fe":0,"1f9d4-1f3ff":0,"1f9d5-1f3fb":0,"1f9d5-1f3fc":0,"1f9d5-1f3fd":0,"1f9d5-1f3fe":0,"1f9d5-1f3ff":0,"1f9d6-1f3fb-200d-2640-fe0f":0,"1f9d6-1f3fc-200d-2640-fe0f":0,"1f9d6-1f3fd-200d-2640-fe0f":0,"1f9d6-1f3fe-200d-2640-fe0f":0,"1f9d6-1f3ff-200d-2640-fe0f":0,"1f9d6-1f3fb-200d-2642-fe0f":0,"1f9d6-1f3fc-200d-2642-fe0f":0,"1f9d6-1f3fd-200d-2642-fe0f":0,"1f9d6-1f3fe-200d-2642-fe0f":0,"1f9d6-1f3ff-200d-2642-fe0f":0,"1f9d6-1f3fb":0,"1f9d6-1f3fc":0,"1f9d6-1f3fd":0,"1f9d6-1f3fe":0,"1f9d6-1f3ff":0,"1f9d7-1f3fb-200d-2640-fe0f":0,"1f9d7-1f3fc-200d-2640-fe0f":0,"1f9d7-1f3fd-200d-2640-fe0f":0,"1f9d7-1f3fe-200d-2640-fe0f":0,"1f9d7-1f3ff-200d-2640-fe0f":0,"1f9d7-1f3fb-200d-2642-fe0f":0,"1f9d7-1f3fc-200d-2642-fe0f":0,"1f9d7-1f3fd-200d-2642-fe0f":0,"1f9d7-1f3fe-200d-2642-fe0f":0,"1f9d7-1f3ff-200d-2642-fe0f":0,"1f9d7-1f3fb":0,"1f9d7-1f3fc":0,"1f9d7-1f3fd":0,"1f9d7-1f3fe":0,"1f9d7-1f3ff":0,"1f9d8-1f3fb-200d-2640-fe0f":0,"1f9d8-1f3fc-200d-2640-fe0f":0,"1f9d8-1f3fd-200d-2640-fe0f":0,"1f9d8-1f3fe-200d-2640-fe0f":0,"1f9d8-1f3ff-200d-2640-fe0f":0,"1f9d8-1f3fb-200d-2642-fe0f":0,"1f9d8-1f3fc-200d-2642-fe0f":0,"1f9d8-1f3fd-200d-2642-fe0f":0,"1f9d8-1f3fe-200d-2642-fe0f":0,"1f9d8-1f3ff-200d-2642-fe0f":0,"1f9d8-1f3fb":0,"1f9d8-1f3fc":0,"1f9d8-1f3fd":0,"1f9d8-1f3fe":0,"1f9d8-1f3ff":0,"1f9d9-1f3fb-200d-2640-fe0f":0,"1f9d9-1f3fc-200d-2640-fe0f":0,"1f9d9-1f3fd-200d-2640-fe0f":0,"1f9d9-1f3fe-200d-2640-fe0f":0,"1f9d9-1f3ff-200d-2640-fe0f":0,"1f9d9-1f3fb-200d-2642-fe0f":0,"1f9d9-1f3fc-200d-2642-fe0f":0,"1f9d9-1f3fd-200d-2642-fe0f":0,"1f9d9-1f3fe-200d-2642-fe0f":0,"1f9d9-1f3ff-200d-2642-fe0f":0,"1f9d9-1f3fb":0,"1f9d9-1f3fc":0,"1f9d9-1f3fd":0,"1f9d9-1f3fe":0,"1f9d9-1f3ff":0,"1f9da-1f3fb-200d-2640-fe0f":0,"1f9da-1f3fc-200d-2640-fe0f":0,"1f9da-1f3fd-200d-2640-fe0f":0,"1f9da-1f3fe-200d-2640-fe0f":0,"1f9da-1f3ff-200d-2640-fe0f":0,"1f9da-1f3fb-200d-2642-fe0f":0,"1f9da-1f3fc-200d-2642-fe0f":0,"1f9da-1f3fd-200d-2642-fe0f":0,"1f9da-1f3fe-200d-2642-fe0f":0,"1f9da-1f3ff-200d-2642-fe0f":0,"1f9da-1f3fb":0,"1f9da-1f3fc":0,"1f9da-1f3fd":0,"1f9da-1f3fe":0,"1f9da-1f3ff":0,"1f9db-1f3fb-200d-2640-fe0f":0,"1f9db-1f3fc-200d-2640-fe0f":0,"1f9db-1f3fd-200d-2640-fe0f":0,"1f9db-1f3fe-200d-2640-fe0f":0,"1f9db-1f3ff-200d-2640-fe0f":0,"1f9db-1f3fb-200d-2642-fe0f":0,"1f9db-1f3fc-200d-2642-fe0f":0,"1f9db-1f3fd-200d-2642-fe0f":0,"1f9db-1f3fe-200d-2642-fe0f":0,"1f9db-1f3ff-200d-2642-fe0f":0,"1f9db-1f3fb":0,"1f9db-1f3fc":0,"1f9db-1f3fd":0,"1f9db-1f3fe":0,"1f9db-1f3ff":0,"1f9dc-1f3fb-200d-2640-fe0f":0,"1f9dc-1f3fc-200d-2640-fe0f":0,"1f9dc-1f3fd-200d-2640-fe0f":0,"1f9dc-1f3fe-200d-2640-fe0f":0,"1f9dc-1f3ff-200d-2640-fe0f":0,"1f9dc-1f3fb-200d-2642-fe0f":0,"1f9dc-1f3fc-200d-2642-fe0f":0,"1f9dc-1f3fd-200d-2642-fe0f":0,"1f9dc-1f3fe-200d-2642-fe0f":0,"1f9dc-1f3ff-200d-2642-fe0f":0,"1f9dc-1f3fb":0,"1f9dc-1f3fc":0,"1f9dc-1f3fd":0,"1f9dc-1f3fe":0,"1f9dc-1f3ff":0,"1f9dd-1f3fb-200d-2640-fe0f":0,"1f9dd-1f3fc-200d-2640-fe0f":0,"1f9dd-1f3fd-200d-2640-fe0f":0,"1f9dd-1f3fe-200d-2640-fe0f":0,"1f9dd-1f3ff-200d-2640-fe0f":0,"1f9dd-1f3fb-200d-2642-fe0f":0,"1f9dd-1f3fc-200d-2642-fe0f":0,"1f9dd-1f3fd-200d-2642-fe0f":0,"1f9dd-1f3fe-200d-2642-fe0f":0,"1f9dd-1f3ff-200d-2642-fe0f":0,"1f9dd-1f3fb":0,"1f9dd-1f3fc":0,"1f9dd-1f3fd":0,"1f9dd-1f3fe":0,"1f9dd-1f3ff":0,"261d-1f3fb":0,"261d-1f3fc":0,"261d-1f3fd":0,"261d-1f3fe":0,"261d-1f3ff":0,"26f9-1f3fb-200d-2640-fe0f":0,"26f9-1f3fc-200d-2640-fe0f":0,"26f9-1f3fd-200d-2640-fe0f":0,"26f9-1f3fe-200d-2640-fe0f":0,"26f9-1f3ff-200d-2640-fe0f":0,"26f9-1f3fb-200d-2642-fe0f":0,"26f9-1f3fc-200d-2642-fe0f":0,"26f9-1f3fd-200d-2642-fe0f":0,"26f9-1f3fe-200d-2642-fe0f":0,"26f9-1f3ff-200d-2642-fe0f":0,"26f9-1f3fb":0,"26f9-1f3fc":0,"26f9-1f3fd":0,"26f9-1f3fe":0,"26f9-1f3ff":0,"270a-1f3fb":0,"270a-1f3fc":0,"270a-1f3fd":0,"270a-1f3fe":0,"270a-1f3ff":0,"270b-1f3fb":0,"270b-1f3fc":0,"270b-1f3fd":0,"270b-1f3fe":0,"270b-1f3ff":0,"270c-1f3fb":0,"270c-1f3fc":0,"270c-1f3fd":0,"270c-1f3fe":0,"270c-1f3ff":0,"270d-1f3fb":0,"270d-1f3fc":0,"270d-1f3fd":0,"270d-1f3fe":0,"270d-1f3ff":0},t.Emoji["00a9-fe0f"]=6362,t.Emoji["00ae-fe0f"]=6363,t.Emoji["2122-fe0f"]=6364,t.Countries=[{phoneCode:"7 840",code:"AB",name:"Abkhazia",pattern:"",emoji:""},{phoneCode:"93",code:"AF",name:"Afghanistan",pattern:"93 XXX XXX XXX",emoji:"🇦🇫"},{phoneCode:"358 18",code:"AX",name:"Aland Islands",pattern:"",emoji:"🇦🇽"},{phoneCode:"355",code:"AL",name:"Albania",pattern:"355 XX XXX XXXX",emoji:"🇦🇱"},{phoneCode:"213",code:"DZ",name:"Algeria",pattern:"213 XXX XX XX XX",emoji:"🇩🇿"},{phoneCode:"1 684",code:"AS",name:"American Samoa",pattern:"1684 XXX XXXX",emoji:"🇦🇸"},{phoneCode:"376",code:"AD",name:"Andorra",pattern:"376 XX XX XX",emoji:"🇦🇩"},{phoneCode:"244",code:"AO",name:"Angola",pattern:"244 XXX XXX XXX",emoji:"🇦🇴"},{phoneCode:"1 264",code:"AI",name:"Anguilla",pattern:"1264 XXX XXXX",emoji:"🇦🇮"},{phoneCode:"1 268",code:"AG",name:"Antigua & Barbuda",pattern:"1268 XXX XXXX",emoji:"🇦🇬"},{phoneCode:"54",code:"AR",name:"Argentina",pattern:"",emoji:"🇦🇷"},{phoneCode:"374",code:"AM",name:"Armenia",pattern:"374 XX XXX XXX",emoji:"🇦🇲"},{phoneCode:"297",code:"AW",name:"Aruba",pattern:"297 XXX XXXX",emoji:"🇦🇼"},{phoneCode:"247",code:"SH",name:"Ascension",pattern:"290 XX XXX",emoji:"🇸🇭"},{phoneCode:"61",code:"AU",name:"Australia",pattern:"61 XXX XXX XXX",emoji:"🇦🇺"},{phoneCode:"672",code:"AU",name:"Australian External Territories",pattern:"61 XXX XXX XXX",emoji:"🇦🇺"},{phoneCode:"43",code:"AT",name:"Austria",pattern:"",emoji:"🇦🇹"},{phoneCode:"994",code:"AZ",name:"Azerbaijan",pattern:"994 XX XXX XX XX",emoji:"🇦🇿"},{phoneCode:"1 242",code:"BS",name:"Bahamas",pattern:"1242 XXX XXXX",emoji:"🇧🇸"},{phoneCode:"973",code:"BH",name:"Bahrain",pattern:"973 XXXX XXXX",emoji:"🇧🇭"},{phoneCode:"880",code:"BD",name:"Bangladesh",pattern:"",emoji:"🇧🇩"},{phoneCode:"1 246",code:"BB",name:"Barbados",pattern:"1246 XXX XXXX",emoji:"🇧🇧"},{phoneCode:"1 268",code:"AG",name:"Barbuda",pattern:"1268 XXX XXXX",emoji:"🇦🇬"},{phoneCode:"375",code:"BY",name:"Belarus",pattern:"375 XX XXX XXXX",emoji:"🇧🇾"},{phoneCode:"32",code:"BE",name:"Belgium",pattern:"32 XXX XX XX XX",emoji:"🇧🇪"},{phoneCode:"501",code:"BZ",name:"Belize",pattern:"",emoji:"🇧🇿"},{phoneCode:"229",code:"BJ",name:"Benin",pattern:"229 XX XXX XXX",emoji:"🇧🇯"},{phoneCode:"1 441",code:"BM",name:"Bermuda",pattern:"1441 XXX XXXX",emoji:"🇧🇲"},{phoneCode:"975",code:"BT",name:"Bhutan",pattern:"",emoji:"🇧🇹"},{phoneCode:"591",code:"BO",name:"Bolivia",pattern:"591 X XXX XXXX",emoji:"🇧🇴"},{phoneCode:"599 7",code:"BQ",name:"Caribbean Netherlands",pattern:"",emoji:"🇧🇶"},{phoneCode:"387",code:"BA",name:"Bosnia & Herzegovina",pattern:"",emoji:"🇧🇦"},{phoneCode:"267",code:"BW",name:"Botswana",pattern:"267 XX XXX XXX",emoji:"🇧🇼"},{phoneCode:"55",code:"BR",name:"Brazil",pattern:"55 XX XXXXX XXXX",emoji:"🇧🇷"},{phoneCode:"246",code:"IO",name:"British Indian Ocean Territory",pattern:"246 XXX XXXX",emoji:"🇮🇴"},{phoneCode:"1 284",code:"VG",name:"British Virgin Islands",pattern:"1284 XXX XXXX",emoji:"🇻🇬"},{phoneCode:"673",code:"BN",name:"Brunei",pattern:"673 XXX XXXX",emoji:"🇧🇳"},{phoneCode:"359",code:"BG",name:"Bulgaria",pattern:"",emoji:"🇧🇬"},{phoneCode:"226",code:"BF",name:"Burkina Faso",pattern:"226 XX XX XX XX",emoji:"🇧🇫"},{phoneCode:"95",code:"MM",name:"Myanmar (Burma)",pattern:"",emoji:"🇲🇲"},{phoneCode:"257",code:"BI",name:"Burundi",pattern:"257 XX XX XXXX",emoji:"🇧🇮"},{phoneCode:"855",code:"KH",name:"Cambodia",pattern:"",emoji:"🇰🇭"},{phoneCode:"237",code:"CM",name:"Cameroon",pattern:"237 XXXX XXXX",emoji:"🇨🇲"},{phoneCode:"1",code:"CA",name:"Canada",pattern:"1 XXX XXX XXXX",emoji:"🇨🇦"},{phoneCode:"238",code:"CV",name:"Cape Verde",pattern:"238 XXX XXXX",emoji:"🇨🇻"},{phoneCode:"1 345",code:"KY",name:"Cayman Islands",pattern:"1345 XXX XXXX",emoji:"🇰🇾"},{phoneCode:"236",code:"CF",name:"Central African Republic",pattern:"236 XX XX XX XX",emoji:"🇨🇫"},{phoneCode:"235",code:"TD",name:"Chad",pattern:"235 XX XX XX XX",emoji:"🇹🇩"},{phoneCode:"56",code:"CL",name:"Chile",pattern:"56 X XXXX XXXX",emoji:"🇨🇱"},{phoneCode:"86",code:"CN",name:"China",pattern:"86 XXX XXXX XXXX",emoji:"🇨🇳"},{phoneCode:"61",code:"CX",name:"Christmas Island",pattern:"",emoji:"🇨🇽"},{phoneCode:"61",code:"CC",name:"Cocos (Keeling) Islands",pattern:"",emoji:"🇨🇨"},{phoneCode:"57",code:"CO",name:"Colombia",pattern:"57 XXX XXX XXXX",emoji:"🇨🇴"},{phoneCode:"269",code:"KM",name:"Comoros",pattern:"269 XXX XXXX",emoji:"🇰🇲"},{phoneCode:"242",code:"CG",name:"Congo - Brazzaville",pattern:"242 XX XXX XXXX",emoji:"🇨🇬"},{phoneCode:"243",code:"CD",name:"Congo - Kinshasa",pattern:"243 XX XXX XXXX",emoji:"🇨🇩"},{phoneCode:"682",code:"CK",name:"Cook Islands",pattern:"",emoji:"🇨🇰"},{phoneCode:"506",code:"CR",name:"Costa Rica",pattern:"",emoji:"🇨🇷"},{phoneCode:"225",code:"CI",name:"Cote dIvoire",pattern:"225 XX XXX XXX",emoji:"🇨🇮"},{phoneCode:"385",code:"HR",name:"Croatia",pattern:"",emoji:"🇭🇷"},{phoneCode:"53",code:"CU",name:"Cuba",pattern:"53 XXXX XXXX",emoji:"🇨🇺"},{phoneCode:"599 9",code:"CW",name:"Curacao",pattern:"",emoji:"🇨🇼"},{phoneCode:"357",code:"CY",name:"Cyprus",pattern:"357 XXXX XXXX",emoji:"🇨🇾"},{phoneCode:"420",code:"CZ",name:"Czech Republic",pattern:"",emoji:"🇨🇿"},{phoneCode:"45",code:"DK",name:"Denmark",pattern:"45 XXXX XXXX",emoji:"🇩🇰"},{phoneCode:"246",code:"DG",name:"Diego Garcia",pattern:"",emoji:"🇩🇬"},{phoneCode:"253",code:"DJ",name:"Djibouti",pattern:"253 XX XX XX XX",emoji:"🇩🇯"},{phoneCode:"1 767",code:"DM",name:"Dominica",pattern:"1767 XXX XXXX",emoji:"🇩🇲"},{phoneCode:"1 809 and 1 829",code:"DO",name:"Dominican Republic",pattern:"1 XXX XXX XXXX",emoji:"🇩🇴"},{phoneCode:"670",code:"TL",name:"Timor-Leste",pattern:"",emoji:"🇹🇱"},{phoneCode:"593",code:"EC",name:"Ecuador",pattern:"",emoji:"🇪🇨"},{phoneCode:"20",code:"EG",name:"Egypt",pattern:"20 XX XXX XXXX",emoji:"🇪🇬"},{phoneCode:"503",code:"SV",name:"El Salvador",pattern:"503 XXXX XXXX",emoji:"🇸🇻"},{phoneCode:"240",code:"GQ",name:"Equatorial Guinea",pattern:"240 XXX XXX XXX",emoji:"🇬🇶"},{phoneCode:"291",code:"ER",name:"Eritrea",pattern:"291 X XXX XXX",emoji:"🇪🇷"},{phoneCode:"372",code:"EE",name:"Estonia",pattern:"",emoji:"🇪🇪"},{phoneCode:"251",code:"ET",name:"Ethiopia",pattern:"251 XX XXX XXXX",emoji:"🇪🇹"},{phoneCode:"500",code:"FK",name:"Falkland Islands",pattern:"",emoji:"🇫🇰"},{phoneCode:"298",code:"FO",name:"Faroe Islands",pattern:"298 XXX XXX",emoji:"🇫🇴"},{phoneCode:"679",code:"FJ",name:"Fiji",pattern:"",emoji:"🇫🇯"},{phoneCode:"358",code:"FI",name:"Finland",pattern:"",emoji:"🇫🇮"},{phoneCode:"33",code:"FR",name:"France",pattern:"33 X XX XX XX XX",emoji:"🇫🇷"},{phoneCode:"594",code:"GF",name:"French Guiana",pattern:"",emoji:"🇬🇫"},{phoneCode:"689",code:"PF",name:"French Polynesia",pattern:"",emoji:"🇵🇫"},{phoneCode:"241",code:"GA",name:"Gabon",pattern:"241 X XX XX XX",emoji:"🇬🇦"},{phoneCode:"220",code:"GM",name:"Gambia",pattern:"220 XXX XXXX",emoji:"🇬🇲"},{phoneCode:"995",code:"GE",name:"Georgia",pattern:"",emoji:"🇬🇪"},{phoneCode:"49",code:"DE",name:"Germany",pattern:"49 XXX XXXXXXXX",emoji:"🇩🇪"},{phoneCode:"233",code:"GH",name:"Ghana",pattern:"",emoji:"🇬🇭"},{phoneCode:"350",code:"GI",name:"Gibraltar",pattern:"350 XXXX XXXX",emoji:"🇬🇮"},{phoneCode:"30",code:"GR",name:"Greece",pattern:"30 XX XXXX XXXX",emoji:"🇬🇷"},{phoneCode:"299",code:"GL",name:"Greenland",pattern:"299 XXX XXX",emoji:"🇬🇱"},{phoneCode:"1 473",code:"GD",name:"Grenada",pattern:"1473 XXX XXXX",emoji:"🇬🇩"},{phoneCode:"590",code:"GP",name:"Guadeloupe",pattern:"",emoji:"🇬🇵"},{phoneCode:"1 671",code:"GU",name:"Guam",pattern:"1671 XXX XXXX",emoji:"🇬🇺"},{phoneCode:"502",code:"GT",name:"Guatemala",pattern:"502 X XXX XXXX",emoji:"🇬🇹"},{phoneCode:"44",code:"GG",name:"Guernsey",pattern:"",emoji:"🇬🇬"},{phoneCode:"224",code:"GN",name:"Guinea",pattern:"224 XXX XXX XXX",emoji:"🇬🇳"},{phoneCode:"245",code:"GW",name:"Guinea-Bissau",pattern:"245 XXX XXXX",emoji:"🇬🇼"},{phoneCode:"592",code:"GY",name:"Guyana",pattern:"",emoji:"🇬🇾"},{phoneCode:"509",code:"HT",name:"Haiti",pattern:"",emoji:"🇭🇹"},{phoneCode:"504",code:"HN",name:"Honduras",pattern:"504 XXXX XXXX",emoji:"🇭🇳"},{phoneCode:"852",code:"HK",name:"Hong Kong SAR China",pattern:"",emoji:"🇭🇰"},{phoneCode:"36",code:"HU",name:"Hungary",pattern:"36 XX XXX XXXX",emoji:"🇭🇺"},{phoneCode:"354",code:"IS",name:"Iceland",pattern:"354 XXX XXXX",emoji:"🇮🇸"},{phoneCode:"91",code:"IN",name:"India",pattern:"91 XXXXX XXXXX",emoji:"🇮🇳"},{phoneCode:"62",code:"ID",name:"Indonesia",pattern:"",emoji:"🇮🇩"},{phoneCode:"98",code:"IR",name:"Iran",pattern:"98 XXX XXX XXXX",emoji:"🇮🇷"},{phoneCode:"964",code:"IQ",name:"Iraq",pattern:"964 XXX XXX XXXX",emoji:"🇮🇶"},{phoneCode:"353",code:"IE",name:"Ireland",pattern:"353 XX XXX XXXX",emoji:"🇮🇪"},{phoneCode:"972",code:"IL",name:"Israel",pattern:"972 XX XXX XXXX",emoji:"🇮🇱"},{phoneCode:"39",code:"IT",name:"Italy",pattern:"39 XXX XXX XXXX",emoji:"🇮🇹"},{phoneCode:"1 876",code:"JM",name:"Jamaica",pattern:"1876 XXX XXXX",emoji:"🇯🇲"},{phoneCode:"47 79",code:"SJ",name:"Svalbard & Jan Mayen",pattern:"",emoji:"🇸🇯"},{phoneCode:"81",code:"JP",name:"Japan",pattern:"81 XX XXXX XXXX",emoji:"🇯🇵"},{phoneCode:"44",code:"JE",name:"Jersey",pattern:"",emoji:"🇯🇪"},{phoneCode:"962",code:"JO",name:"Jordan",pattern:"962 X XXXX XXXX",emoji:"🇯🇴"},{phoneCode:"7 7",code:"KZ",name:"Kazakhstan",pattern:"7 XXX XXX XX XX",emoji:"🇰🇿"},{phoneCode:"254",code:"KE",name:"Kenya",pattern:"254 XXX XXX XXX",emoji:"🇰🇪"},{phoneCode:"686",code:"KI",name:"Kiribati",pattern:"",emoji:"🇰🇮"},{phoneCode:"850",code:"KP",name:"North Korea",pattern:"",emoji:"🇰🇵"},{phoneCode:"82",code:"KR",name:"South Korea",pattern:"",emoji:"🇰🇷"},{phoneCode:"965",code:"KW",name:"Kuwait",pattern:"965 XXXX XXXX",emoji:"🇰🇼"},{phoneCode:"996",code:"KG",name:"Kyrgyzstan",pattern:"",emoji:"🇰🇬"},{phoneCode:"856",code:"LA",name:"Laos",pattern:"",emoji:"🇱🇦"},{phoneCode:"371",code:"LV",name:"Latvia",pattern:"371 XXX XXXXX",emoji:"🇱🇻"},{phoneCode:"961",code:"LB",name:"Lebanon",pattern:"",emoji:"🇱🇧"},{phoneCode:"266",code:"LS",name:"Lesotho",pattern:"266 XX XXX XXX",emoji:"🇱🇸"},{phoneCode:"231",code:"LR",name:"Liberia",pattern:"",emoji:"🇱🇷"},{phoneCode:"218",code:"LY",name:"Libya",pattern:"218 XX XXX XXXX",emoji:"🇱🇾"},{phoneCode:"423",code:"LI",name:"Liechtenstein",pattern:"",emoji:"🇱🇮"},{phoneCode:"370",code:"LT",name:"Lithuania",pattern:"370 XXX XXXXX",emoji:"🇱🇹"},{phoneCode:"352",code:"LU",name:"Luxembourg",pattern:"",emoji:"🇱🇺"},{phoneCode:"853",code:"MO",name:"Macau SAR China",pattern:"",emoji:"🇲🇴"},{phoneCode:"389",code:"MK",name:"Macedonia",pattern:"",emoji:"🇲🇰"},{phoneCode:"261",code:"MG",name:"Madagascar",pattern:"261 XX XX XXX XX",emoji:"🇲🇬"},{phoneCode:"265",code:"MW",name:"Malawi",pattern:"",emoji:"🇲🇼"},{phoneCode:"60",code:"MM",name:"Malaysia",pattern:"",emoji:"🇲🇲"},{phoneCode:"960",code:"MV",name:"Maldives",pattern:"",emoji:"🇲🇻"},{phoneCode:"223",code:"ML",name:"Mali",pattern:"223 XXXX XXXX",emoji:"🇲🇱"},{phoneCode:"356",code:"MT",name:"Malta",pattern:"356 XX XX XX XX",emoji:"🇲🇹"},{phoneCode:"692",code:"MH",name:"Marshall Islands",pattern:"",emoji:"🇲🇭"},{phoneCode:"596",code:"MQ",name:"Martinique",pattern:"",emoji:"🇲🇶"},{phoneCode:"222",code:"MR",name:"Mauritania",pattern:"222 XXXX XXXX",emoji:"🇲🇷"},{phoneCode:"230",code:"MU",name:"Mauritius",pattern:"",emoji:"🇲🇺"},{phoneCode:"262",code:"YT",name:"Mayotte",pattern:"",emoji:"🇾🇹"},{phoneCode:"52",code:"MX",name:"Mexico",pattern:"",emoji:"🇲🇽"},{phoneCode:"691",code:"FM",name:"Micronesia",pattern:"",emoji:"🇫🇲"},{phoneCode:"373",code:"MD",name:"Moldova",pattern:"373 XX XXX XXX",emoji:"🇲🇩"},{phoneCode:"377",code:"MC",name:"Monaco",pattern:"377 XXXX XXXX",emoji:"🇲🇨"},{phoneCode:"976",code:"MN",name:"Mongolia",pattern:"",emoji:"🇲🇳"},{phoneCode:"382",code:"ME",name:"Montenegro",pattern:"",emoji:"🇲🇪"},{phoneCode:"1 664",code:"MS",name:"Montserrat",pattern:"1664 XXX XXXX",emoji:"🇲🇸"},{phoneCode:"212",code:"MA",name:"Morocco",pattern:"212 XX XXX XXXX",emoji:"🇲🇦"},{phoneCode:"258",code:"MZ",name:"Mozambique",pattern:"258 XX XXX XXXX",emoji:"🇲🇿"},{phoneCode:"264",code:"NA",name:"Namibia",pattern:"264 XX XXX XXXX",emoji:"🇳🇦"},{phoneCode:"674",code:"NR",name:"Nauru",pattern:"",emoji:"🇳🇷"},{phoneCode:"977",code:"NP",name:"Nepal",pattern:"",emoji:"🇳🇵"},{phoneCode:"31",code:"NL",name:"Netherlands",pattern:"31 X XX XX XX XX",emoji:"🇳🇱"},{phoneCode:"687",code:"NC",name:"New Caledonia",pattern:"",emoji:"🇳🇨"},{phoneCode:"64",code:"NZ",name:"New Zealand",pattern:"",emoji:"🇳🇿"},{phoneCode:"505",code:"NI",name:"Nicaragua",pattern:"505 XXXX XXXX",emoji:"🇳🇮"},{phoneCode:"227",code:"NE",name:"Niger",pattern:"227 XX XX XX XX",emoji:"🇳🇪"},{phoneCode:"234",code:"NG",name:"Nigeria",pattern:"",emoji:"🇳🇬"},{phoneCode:"683",code:"NU",name:"Niue",pattern:"",emoji:"🇳🇺"},{phoneCode:"672",code:"NF",name:"Norfolk Island",pattern:"",emoji:"🇳🇫"},{phoneCode:"1 670",code:"MP",name:"Northern Mariana Islands",pattern:"1670 XXX XXXX",emoji:"🇲🇵"},{phoneCode:"47",code:"NO",name:"Norway",pattern:"47 XXXX XXXX",emoji:"🇳🇴"},{phoneCode:"968",code:"OM",name:"Oman",pattern:"968 XXXX XXXX",emoji:"🇴🇲"},{phoneCode:"92",code:"PK",name:"Pakistan",pattern:"92 XXX XXX XXXX",emoji:"🇵🇰"},{phoneCode:"680",code:"PW",name:"Palau",pattern:"",emoji:"🇵🇼"},{phoneCode:"970",code:"PS",name:"Palestinian Territories",pattern:"970 XXX XX XXXX",emoji:"🇵🇸"},{phoneCode:"507",code:"PA",name:"Panama",pattern:"507 XXXX XXXX",emoji:"🇵🇦"},{phoneCode:"675",code:"PG",name:"Papua New Guinea",pattern:"",emoji:"🇵🇬"},{phoneCode:"595",code:"PY",name:"Paraguay",pattern:"595 XXX XXX XXX",emoji:"🇵🇾"},{phoneCode:"51",code:"PE",name:"Peru",pattern:"51 XXX XXX XXX",emoji:"🇵🇪"},{phoneCode:"63",code:"PH",name:"Philippines",pattern:"63 XXX XXX XXXX",emoji:"🇵🇭"},{phoneCode:"64",code:"PN",name:"Pitcairn Islands",pattern:"",emoji:"🇵🇳"},{phoneCode:"48",code:"PL",name:"Poland",pattern:"48 XXX XXX XXX",emoji:"🇵🇱"},{phoneCode:"351",code:"PT",name:"Portugal",pattern:"351 X XXXX XXXX",emoji:"🇵🇹"},{phoneCode:"1 787 and 1 939",code:"PR",name:"Puerto Rico",pattern:"1 XXX XXX XXXX",emoji:"🇵🇷"},{phoneCode:"974",code:"QA",name:"Qatar",pattern:"",emoji:"🇶🇦"},{phoneCode:"262",code:"RE",name:"Reunion",pattern:"262 XXX XXX XXX",emoji:"🇷🇪"},{phoneCode:"40",code:"RO",name:"Romania",pattern:"40 XXX XXX XXX",emoji:"🇷🇴"},{phoneCode:"7",code:"RU",name:"Russia",pattern:"7 XXX XXX XX XX",emoji:"🇷🇺"},{phoneCode:"250",code:"RW",name:"Rwanda",pattern:"250 XXX XXX XXX",emoji:"🇷🇼"},{phoneCode:"590",code:"BL",name:"St. Barthelemy",pattern:"",emoji:"🇧🇱"},{phoneCode:"290",code:"SH",name:"St. Helena",pattern:"290 XX XXX",emoji:"🇸🇭"},{phoneCode:"1 869",code:"KN",name:"St. Kitts & Nevis",pattern:"1869 XXX XXXX",emoji:"🇰🇳"},{phoneCode:"1 758",code:"LC",name:"St. Lucia",pattern:"1758 XXX XXXX",emoji:"🇱🇨"},{phoneCode:"590",code:"MF",name:"St. Martin (France)",pattern:"",emoji:"🇲🇫"},{phoneCode:"508",code:"PM",name:"St. Pierre and Miquelon",pattern:"",emoji:"🇵🇲"},{phoneCode:"1 784",code:"VC",name:"St. Vincent and the Grenadines",pattern:"1784 XXX XXXX",emoji:"🇻🇨"},{phoneCode:"685",code:"WS",name:"Samoa",pattern:"",emoji:"🇼🇸"},{phoneCode:"378",code:"SM",name:"San Marino",pattern:"378 XXX XXX XXXX",emoji:"🇸🇲"},{phoneCode:"239",code:"ST",name:"São Tome & Principe",pattern:"239 XX XXXXX",emoji:"🇸🇹"},{phoneCode:"966",code:"SA",name:"Saudi Arabia",pattern:"",emoji:"🇸🇦"},{phoneCode:"221",code:"SN",name:"Senegal",pattern:"221 XX XXX XXXX",emoji:"🇸🇳"},{phoneCode:"381",code:"RS",name:"Serbia",pattern:"381 XX XXX XXXX",emoji:"🇷🇸"},{phoneCode:"248",code:"SC",name:"Seychelles",pattern:"248 X XX XX XX",emoji:"🇸🇨"},{phoneCode:"232",code:"SL",name:"Sierra Leone",pattern:"232 XX XXX XXX",emoji:"🇸🇱"},{phoneCode:"65",code:"SG",name:"Singapore",pattern:"65 XXXX XXXX",emoji:"🇸🇬"},{phoneCode:"599 3",code:"BQ",name:"Sint Eustatius",pattern:"",emoji:"🇧🇶"},{phoneCode:"1 721",code:"SX",name:"Sint Maarten",pattern:"1721 XXX XXXX",emoji:"🇸🇽"},{phoneCode:"421",code:"SK",name:"Slovakia",pattern:"",emoji:"🇸🇰"},{phoneCode:"386",code:"SI",name:"Slovenia",pattern:"",emoji:"🇸🇮"},{phoneCode:"677",code:"SB",name:"Solomon Islands",pattern:"",emoji:"🇸🇧"},{phoneCode:"252",code:"SO",name:"Somalia",pattern:"252 XX XXX XXX",emoji:"🇸🇴"},{phoneCode:"27",code:"ZA",name:"South Africa",pattern:"27 XX XXX XXXX",emoji:"🇿🇦"},{phoneCode:"500",code:"GS",name:"South Georgia & South Sandwich Islands",pattern:"",emoji:"🇬🇸"},{phoneCode:"995 34",code:"",name:"South Ossetia",pattern:"",emoji:""},{phoneCode:"211",code:"SS",name:"South Sudan",pattern:"211 XX XXX XXXX",emoji:"🇸🇸"},{phoneCode:"34",code:"ES",name:"Spain",pattern:"34 XXX XXX XXX",emoji:"🇪🇸"},{phoneCode:"94",code:"LK",name:"Sri Lanka",pattern:"94 XX XXX XXXX",emoji:"🇱🇰"},{phoneCode:"249",code:"SD",name:"Sudan",pattern:"249 XX XXX XXXX",emoji:"🇸🇩"},{phoneCode:"597",code:"SR",name:"Suriname",pattern:"597 XXX XXXX",emoji:"🇸🇷"},{phoneCode:"47 79",code:"SJ",name:"Svalbard",pattern:"",emoji:"🇸🇯"},{phoneCode:"268",code:"SZ",name:"Swaziland",pattern:"268 XXXX XXXX",emoji:"🇸🇿"},{phoneCode:"46",code:"SE",name:"Sweden",pattern:"46 XX XXX XXXX",emoji:"🇸🇪"},{phoneCode:"41",code:"CH",name:"Switzerland",pattern:"41 XX XXX XXXX",emoji:"🇨🇭"},{phoneCode:"963",code:"SY",name:"Syria",pattern:"",emoji:"🇸🇾"},{phoneCode:"886",code:"TW",name:"Taiwan",pattern:"",emoji:"🇹🇼"},{phoneCode:"992",code:"TJ",name:"Tajikistan",pattern:"",emoji:"🇹🇯"},{phoneCode:"255",code:"TZ",name:"Tanzania",pattern:"255 XX XXX XXXX",emoji:"🇹🇿"},{phoneCode:"66",code:"TH",name:"Thailand",pattern:"66 X XXXX XXXX",emoji:"🇹🇭"},{phoneCode:"228",code:"TG",name:"Togo",pattern:"228 XX XXX XXX",emoji:"🇹🇬"},{phoneCode:"690",code:"TK",name:"Tokelau",pattern:"",emoji:"🇹🇰"},{phoneCode:"676",code:"TO",name:"Tonga",pattern:"",emoji:"🇹🇴"},{phoneCode:"1 868",code:"TT",name:"Trinidad & Tobago",pattern:"1868 XXX XXXX",emoji:"🇹🇹"},{phoneCode:"216",code:"TN",name:"Tunisia",pattern:"216 XX XXX XXX",emoji:"🇹🇳"},{phoneCode:"90",code:"TR",name:"Turkey",pattern:"90 XXX XXX XXXX",emoji:"🇹🇷"},{phoneCode:"993",code:"TM",name:"Turkmenistan",pattern:"993 XX XXXXXX",emoji:"🇹🇲"},{phoneCode:"1 649",code:"TC",name:"Turks & Caicos Islands",pattern:"1649 XXX XXXX",emoji:"🇹🇨"},{phoneCode:"688",code:"TV",name:"Tuvalu",pattern:"",emoji:"🇹🇻"},{phoneCode:"256",code:"UG",name:"Uganda",pattern:"256 XX XXX XXXX",emoji:"🇺🇬"},{phoneCode:"380",code:"UA",name:"Ukraine",pattern:"380 XX XXX XX XX",emoji:"🇺🇦"},{phoneCode:"971",code:"AE",name:"United Arab Emirates",pattern:"971 XX XXX XXXX",emoji:"🇦🇪"},{phoneCode:"44",code:"GB",name:"United Kingdom",pattern:"44 XXXX XXXXXX",emoji:"🇬🇧"},{phoneCode:"1",code:"US",name:"United States",pattern:"1 XXX XXX XXXX",emoji:"🇺🇸"},{phoneCode:"598",code:"UY",name:"Uruguay",pattern:"598 XXXX XXXX",emoji:"🇺🇾"},{phoneCode:"1 340",code:"VI",name:"U.S. Virgin Islands",pattern:"1340 XXX XXXX",emoji:"🇻🇮"},{phoneCode:"998",code:"UZ",name:"Uzbekistan",pattern:"998 XX XXXXXXX",emoji:"🇺🇿"},{phoneCode:"678",code:"VU",name:"Vanuatu",pattern:"",emoji:"🇻🇺"},{phoneCode:"58",code:"VE",name:"Venezuela",pattern:"58 XXX XXX XXXX",emoji:"🇻🇪"},{phoneCode:"39 06 698",code:"VA",name:"Vatican City",pattern:"",emoji:"🇻🇦"},{phoneCode:"84",code:"VN",name:"Vietnam",pattern:"",emoji:"🇻🇳"},{phoneCode:"681",code:"WF",name:"Wallis & Futuna",pattern:"",emoji:"🇼🇫"},{phoneCode:"967",code:"YE",name:"Yemen",pattern:"967 XXX XXX XXX",emoji:"🇾🇪"},{phoneCode:"260",code:"ZM",name:"Zambia",pattern:"260 XX XXX XXXX",emoji:"🇿🇲"},{phoneCode:"255",code:"",name:"Zanzibar",pattern:"",emoji:""},{phoneCode:"263",code:"ZW",name:"Zimbabwe",pattern:"263 XX XXX XXXX",emoji:"🇿🇼"}],t.TLD=["abogado","ac","academy","accountants","active","actor","ad","adult","ae","aero","af","ag","agency","ai","airforce","al","allfinanz","alsace","am","amsterdam","an","android","ao","apartments","aq","aquarelle","ar","archi","army","arpa","as","asia","associates","at","attorney","au","auction","audio","autos","aw","ax","axa","az","ba","band","bank","bar","barclaycard","barclays","bargains","bayern","bb","bd","be","beer","berlin","best","bf","bg","bh","bi","bid","bike","bingo","bio","biz","bj","black","blackfriday","bloomberg","blue","bm","bmw","bn","bnpparibas","bo","boo","boutique","br","brussels","bs","bt","budapest","build","builders","business","buzz","bv","bw","by","bz","bzh","ca","cab","cal","camera","camp","cancerresearch","canon","capetown","capital","caravan","cards","care","career","careers","cartier","casa","cash","cat","catering","cc","cd","center","ceo","cern","cf","cg","ch","channel","chat","cheap","christmas","chrome","church","ci","citic","city","ck","cl","claims","cleaning","click","clinic","clothing","club","cm","cn","co","coach","codes","coffee","college","cologne","com","community","company","computer","condos","construction","consulting","contractors","cooking","cool","coop","country","cr","credit","creditcard","cricket","crs","cruises","cu","cuisinella","cv","cw","cx","cy","cymru","cz","dabur","dad","dance","dating","day","dclk","de","deals","degree","delivery","democrat","dental","dentist","desi","design","dev","diamonds","diet","digital","direct","directory","discount","dj","dk","dm","dnp","do","docs","domains","doosan","durban","dvag","dz","eat","ec","edu","education","ee","eg","email","emerck","energy","engineer","engineering","enterprises","equipment","er","es","esq","estate","et","eu","eurovision","eus","events","everbank","exchange","expert","exposed","fail","farm","fashion","feedback","fi","finance","financial","firmdale","fish","fishing","fit","fitness","fj","fk","flights","florist","flowers","flsmidth","fly","fm","fo","foo","forsale","foundation","fr","frl","frogans","fund","furniture","futbol","ga","gal","gallery","garden","gb","gbiz","gd","ge","gent","gf","gg","ggee","gh","gi","gift","gifts","gives","gl","glass","gle","global","globo","gm","gmail","gmo","gmx","gn","goog","google","gop","gov","gp","gq","gr","graphics","gratis","green","gripe","gs","gt","gu","guide","guitars","guru","gw","gy","hamburg","hangout","haus","healthcare","help","here","hermes","hiphop","hiv","hk","hm","hn","holdings","holiday","homes","horse","host","hosting","house","how","hr","ht","hu","ibm","id","ie","ifm","il","im","immo","immobilien","in","industries","info","ing","ink","institute","insure","int","international","investments","io","iq","ir","irish","is","it","iwc","jcb","je","jetzt","jm","jo","jobs","joburg","jp","juegos","kaufen","kddi","ke","kg","kh","ki","kim","kitchen","kiwi","km","kn","koeln","kp","kr","krd","kred","kw","ky","kyoto","kz","la","lacaixa","land","lat","latrobe","lawyer","lb","lc","lds","lease","legal","lgbt","li","lidl","life","lighting","limited","limo","link","lk","loans","london","lotte","lotto","lr","ls","lt","ltda","lu","luxe","luxury","lv","ly","ma","madrid","maison","management","mango","market","marketing","marriott","mc","md","me","media","meet","melbourne","meme","memorial","menu","mg","mh","miami","mil","mini","mk","ml","mm","mn","mo","mobi","moda","moe","monash","money","mormon","mortgage","moscow","motorcycles","mov","mp","mq","mr","ms","mt","mu","museum","mv","mw","mx","my","mz","na","nagoya","name","navy","nc","ne","net","network","neustar","new","nexus","nf","ng","ngo","nhk","ni","nico","ninja","nl","no","np","nr","nra","nrw","ntt","nu","nyc","nz","okinawa","om","one","ong","onl","ooo","org","organic","osaka","otsuka","ovh","pa","paris","partners","parts","party","pe","pf","pg","ph","pharmacy","photo","photography","photos","physio","pics","pictures","pink","pizza","pk","pl","place","plumbing","pm","pn","pohl","poker","porn","post","pr","praxi","press","pro","prod","productions","prof","properties","property","ps","pt","pub","pw","py","qa","qpon","quebec","re","realtor","recipes","red","rehab","reise","reisen","reit","ren","rentals","repair","report","republican","rest","restaurant","reviews","rich","rio","rip","ro","rocks","rodeo","rs","rsvp","ru","ruhr","rw","ryukyu","sa","saarland","sale","samsung","sarl","saxo","sb","sc","sca","scb","schmidt","schule","schwarz","science","scot","sd","se","services","sew","sexy","sg","sh","shiksha","shoes","shriram","si","singles","sj","sk","sky","sl","sm","sn","so","social","software","sohu","solar","solutions","soy","space","spiegel","sr","st","style","su","supplies","supply","support","surf","surgery","suzuki","sv","sx","sy","sydney","systems","sz","taipei","tatar","tattoo","tax","tc","td","technology","tel","temasek","tennis","tf","tg","th","tienda","tips","tires","tirol","tj","tk","tl","tm","tn","to","today","tokyo","tools","top","toshiba","town","toys","tp","tr","trade","training","travel","trust","tt","tui","tv","tw","tz","ua","ug","uk","university","uno","uol","us","uy","uz","va","vacations","vc","ve","vegas","ventures","versicherung","vet","vg","vi","viajes","video","villas","vision","vlaanderen","vn","vodka","vote","voting","voto","voyage","vu","wales","wang","watch","webcam","website","wed","wedding","wf","whoswho","wien","wiki","williamhill","wme","work","works","world","ws","wtc","wtf","佛山","集团","在线","한국","ভারত","八卦","موقع","公益","公司","移动","我爱你","москва","қаз","онлайн","сайт","срб","淡马锡","орг","삼성","சிங்கப்பூர்","商标","商店","商城","дети","мкд","中文网","中信","中国","中國","谷歌","భారత్","ලංකා","ભારત","भारत","网店","संगठन","网络","укр","香港","台湾","台灣","手机","мон","الجزائر","عمان","ایران","امارات","بازار","الاردن","بھارت","المغرب","السعودية","مليسيا","شبكة","გე","机构","组织机构","ไทย","سورية","рус","рф","تونس","みんな","グーグル","世界","ਭਾਰਤ","网址","游戏","vermögensberater","vermögensberatung","企业","مصر","قطر","广东","இலங்கை","இந்தியா","新加坡","فلسطين","政务","xxx","xyz","yachts","yandex","ye","yoga","yokohama","youtube","yt","za","zip","zm","zone","zuerich","zw"],t.LatinizeMap={"Á":"A","Ă":"A","Ắ":"A","Ặ":"A","Ằ":"A","Ẳ":"A","Ẵ":"A","Ǎ":"A","Â":"A","Ấ":"A","Ậ":"A","Ầ":"A","Ẩ":"A","Ẫ":"A","Ä":"A","Ǟ":"A","Ȧ":"A","Ǡ":"A","Ạ":"A","Ȁ":"A","À":"A","Ả":"A","Ȃ":"A","Ā":"A","Ą":"A","Å":"A","Ǻ":"A","Ḁ":"A","Ⱥ":"A","Ã":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ḃ":"B","Ḅ":"B","Ɓ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ć":"C","Č":"C","Ç":"C","Ḉ":"C","Ĉ":"C","Ċ":"C","Ƈ":"C","Ȼ":"C","Ď":"D","Ḑ":"D","Ḓ":"D","Ḋ":"D","Ḍ":"D","Ɗ":"D","Ḏ":"D","Dz":"D","Dž":"D","Đ":"D","Ƌ":"D","DZ":"DZ","DŽ":"DZ","É":"E","Ĕ":"E","Ě":"E","Ȩ":"E","Ḝ":"E","Ê":"E","Ế":"E","Ệ":"E","Ề":"E","Ể":"E","Ễ":"E","Ḙ":"E","Ë":"E","Ė":"E","Ẹ":"E","Ȅ":"E","È":"E","Ẻ":"E","Ȇ":"E","Ē":"E","Ḗ":"E","Ḕ":"E","Ę":"E","Ɇ":"E","Ẽ":"E","Ḛ":"E","":"ET","Ḟ":"F","Ƒ":"F","Ǵ":"G","Ğ":"G","Ǧ":"G","Ģ":"G","Ĝ":"G","Ġ":"G","Ɠ":"G","Ḡ":"G","Ǥ":"G","Ḫ":"H","Ȟ":"H","Ḩ":"H","Ĥ":"H","Ⱨ":"H","Ḧ":"H","Ḣ":"H","Ḥ":"H","Ħ":"H","Í":"I","Ĭ":"I","Ǐ":"I","Î":"I","Ï":"I","Ḯ":"I","İ":"I","Ị":"I","Ȉ":"I","Ì":"I","Ỉ":"I","Ȋ":"I","Ī":"I","Į":"I","Ɨ":"I","Ĩ":"I","Ḭ":"I","Ꝺ":"D","Ꝼ":"F","Ᵹ":"G","Ꞃ":"R","Ꞅ":"S","Ꞇ":"T","Ꝭ":"IS","Ĵ":"J","Ɉ":"J","Ḱ":"K","Ǩ":"K","Ķ":"K","Ⱪ":"K","Ꝃ":"K","Ḳ":"K","Ƙ":"K","Ḵ":"K","Ꝁ":"K","Ꝅ":"K","Ĺ":"L","Ƚ":"L","Ľ":"L","Ļ":"L","Ḽ":"L","Ḷ":"L","Ḹ":"L","Ⱡ":"L","Ꝉ":"L","Ḻ":"L","Ŀ":"L","Ɫ":"L","Lj":"L","Ł":"L","LJ":"LJ","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ń":"N","Ň":"N","Ņ":"N","Ṋ":"N","Ṅ":"N","Ṇ":"N","Ǹ":"N","Ɲ":"N","Ṉ":"N","Ƞ":"N","Nj":"N","Ñ":"N","NJ":"NJ","Ó":"O","Ŏ":"O","Ǒ":"O","Ô":"O","Ố":"O","Ộ":"O","Ồ":"O","Ổ":"O","Ỗ":"O","Ö":"O","Ȫ":"O","Ȯ":"O","Ȱ":"O","Ọ":"O","Ő":"O","Ȍ":"O","Ò":"O","Ỏ":"O","Ơ":"O","Ớ":"O","Ợ":"O","Ờ":"O","Ở":"O","Ỡ":"O","Ȏ":"O","Ꝋ":"O","Ꝍ":"O","Ō":"O","Ṓ":"O","Ṑ":"O","Ɵ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Õ":"O","Ṍ":"O","Ṏ":"O","Ȭ":"O","Ƣ":"OI","Ꝏ":"OO","Ɛ":"E","Ɔ":"O","Ȣ":"OU","Ṕ":"P","Ṗ":"P","Ꝓ":"P","Ƥ":"P","Ꝕ":"P","Ᵽ":"P","Ꝑ":"P","Ꝙ":"Q","Ꝗ":"Q","Ŕ":"R","Ř":"R","Ŗ":"R","Ṙ":"R","Ṛ":"R","Ṝ":"R","Ȑ":"R","Ȓ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꜿ":"C","Ǝ":"E","Ś":"S","Ṥ":"S","Š":"S","Ṧ":"S","Ş":"S","Ŝ":"S","Ș":"S","Ṡ":"S","Ṣ":"S","Ṩ":"S","ẞ":"SS","Ť":"T","Ţ":"T","Ṱ":"T","Ț":"T","Ⱦ":"T","Ṫ":"T","Ṭ":"T","Ƭ":"T","Ṯ":"T","Ʈ":"T","Ŧ":"T","Ɐ":"A","Ꞁ":"L","Ɯ":"M","Ʌ":"V","Ꜩ":"TZ","Ú":"U","Ŭ":"U","Ǔ":"U","Û":"U","Ṷ":"U","Ü":"U","Ǘ":"U","Ǚ":"U","Ǜ":"U","Ǖ":"U","Ṳ":"U","Ụ":"U","Ű":"U","Ȕ":"U","Ù":"U","Ủ":"U","Ư":"U","Ứ":"U","Ự":"U","Ừ":"U","Ử":"U","Ữ":"U","Ȗ":"U","Ū":"U","Ṻ":"U","Ų":"U","Ů":"U","Ũ":"U","Ṹ":"U","Ṵ":"U","Ꝟ":"V","Ṿ":"V","Ʋ":"V","Ṽ":"V","Ꝡ":"VY","Ẃ":"W","Ŵ":"W","Ẅ":"W","Ẇ":"W","Ẉ":"W","Ẁ":"W","Ⱳ":"W","Ẍ":"X","Ẋ":"X","Ý":"Y","Ŷ":"Y","Ÿ":"Y","Ẏ":"Y","Ỵ":"Y","Ỳ":"Y","Ƴ":"Y","Ỷ":"Y","Ỿ":"Y","Ȳ":"Y","Ɏ":"Y","Ỹ":"Y","Ź":"Z","Ž":"Z","Ẑ":"Z","Ⱬ":"Z","Ż":"Z","Ẓ":"Z","Ȥ":"Z","Ẕ":"Z","Ƶ":"Z","IJ":"IJ","Œ":"OE","ᴀ":"A","ᴁ":"AE","ʙ":"B","ᴃ":"B","":"C","ᴅ":"D","ᴇ":"E","ꜰ":"F","ɢ":"G","ʛ":"G","ʜ":"H","ɪ":"I","ʁ":"R","ᴊ":"J","ᴋ":"K","ʟ":"L","ᴌ":"L","ᴍ":"M","ɴ":"N","":"O","ɶ":"OE","ᴐ":"O","ᴕ":"OU","ᴘ":"P","ʀ":"R","ᴎ":"N","ᴙ":"R","":"S","ᴛ":"T","ⱻ":"E","ᴚ":"R","":"U","":"V","":"W","ʏ":"Y","":"Z","á":"a","ă":"a","ắ":"a","ặ":"a","ằ":"a","ẳ":"a","ẵ":"a","ǎ":"a","â":"a","ấ":"a","ậ":"a","ầ":"a","ẩ":"a","ẫ":"a","ä":"a","ǟ":"a","ȧ":"a","ǡ":"a","ạ":"a","ȁ":"a","à":"a","ả":"a","ȃ":"a","ā":"a","ą":"a","ᶏ":"a","ẚ":"a","å":"a","ǻ":"a","ḁ":"a","ⱥ":"a","ã":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ḃ":"b","ḅ":"b","ɓ":"b","ḇ":"b","ᵬ":"b","ᶀ":"b","ƀ":"b","ƃ":"b","ɵ":"o","ć":"c","č":"c","ç":"c","ḉ":"c","ĉ":"c","ɕ":"c","ċ":"c","ƈ":"c","ȼ":"c","ď":"d","ḑ":"d","ḓ":"d","ȡ":"d","ḋ":"d","ḍ":"d","ɗ":"d","ᶑ":"d","ḏ":"d","ᵭ":"d","ᶁ":"d","đ":"d","ɖ":"d","ƌ":"d","ı":"i","ȷ":"j","ɟ":"j","ʄ":"j","dz":"dz","dž":"dz","é":"e","ĕ":"e","ě":"e","ȩ":"e","ḝ":"e","ê":"e","ế":"e","ệ":"e","ề":"e","ể":"e","ễ":"e","ḙ":"e","ë":"e","ė":"e","ẹ":"e","ȅ":"e","è":"e","ẻ":"e","ȇ":"e","ē":"e","ḗ":"e","ḕ":"e","ⱸ":"e","ę":"e","ᶒ":"e","ɇ":"e","ẽ":"e","ḛ":"e","ꝫ":"et","ḟ":"f","ƒ":"f","ᵮ":"f","ᶂ":"f","ǵ":"g","ğ":"g","ǧ":"g","ģ":"g","ĝ":"g","ġ":"g","ɠ":"g","ḡ":"g","":"g","ǥ":"g","ḫ":"h","ȟ":"h","ḩ":"h","ĥ":"h","ⱨ":"h","ḧ":"h","ḣ":"h","ḥ":"h","ɦ":"h","ẖ":"h","ħ":"h","ƕ":"hv","í":"i","ĭ":"i","ǐ":"i","î":"i","ï":"i","ḯ":"i","ị":"i","ȉ":"i","ì":"i","ỉ":"i","ȋ":"i","ī":"i","į":"i","ᶖ":"i","ɨ":"i","ĩ":"i","ḭ":"i","ꝺ":"d","ꝼ":"f","ᵹ":"g","ꞃ":"r","ꞅ":"s","ꞇ":"t","ꝭ":"is","ǰ":"j","ĵ":"j","ʝ":"j","ɉ":"j","ḱ":"k","ǩ":"k","ķ":"k","ⱪ":"k","ꝃ":"k","ḳ":"k","ƙ":"k","ḵ":"k","ᶄ":"k","ꝁ":"k","ꝅ":"k","ĺ":"l","ƚ":"l","ɬ":"l","ľ":"l","ļ":"l","ḽ":"l","ȴ":"l","ḷ":"l","ḹ":"l","ⱡ":"l","ꝉ":"l","ḻ":"l","ŀ":"l","ɫ":"l","ᶅ":"l","ɭ":"l","ł":"l","lj":"lj",ſ:"s","ẜ":"s","ẛ":"s","":"s","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ᵯ":"m","ᶆ":"m","ń":"n","ň":"n","ņ":"n","ṋ":"n","ȵ":"n","ṅ":"n","ṇ":"n","ǹ":"n","ɲ":"n","ṉ":"n","ƞ":"n","ᵰ":"n","ᶇ":"n","ɳ":"n","ñ":"n","nj":"nj","ó":"o","ŏ":"o","ǒ":"o","ô":"o","ố":"o","ộ":"o","ồ":"o","ổ":"o","ỗ":"o","ö":"o","ȫ":"o","ȯ":"o","ȱ":"o","ọ":"o","ő":"o","ȍ":"o","ò":"o","ỏ":"o","ơ":"o","ớ":"o","ợ":"o","ờ":"o","ở":"o","ỡ":"o","ȏ":"o","ꝋ":"o","ꝍ":"o","ⱺ":"o","ō":"o","ṓ":"o","ṑ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","õ":"o","ṍ":"o","ṏ":"o","ȭ":"o","ƣ":"oi","ꝏ":"oo","ɛ":"e","ᶓ":"e","ɔ":"o","ᶗ":"o","ȣ":"ou","ṕ":"p","ṗ":"p","ꝓ":"p","ƥ":"p","ᵱ":"p","ᶈ":"p","ꝕ":"p","ᵽ":"p","ꝑ":"p","ꝙ":"q","ʠ":"q","ɋ":"q","ꝗ":"q","ŕ":"r","ř":"r","ŗ":"r","ṙ":"r","ṛ":"r","ṝ":"r","ȑ":"r","ɾ":"r","ᵳ":"r","ȓ":"r","ṟ":"r","ɼ":"r","ᵲ":"r","ᶉ":"r","ɍ":"r","ɽ":"r","ↄ":"c","ꜿ":"c","ɘ":"e","ɿ":"r","ś":"s","ṥ":"s","š":"s","ṧ":"s","ş":"s","ŝ":"s","ș":"s","ṡ":"s","ṣ":"s","ṩ":"s","ʂ":"s","ᵴ":"s","ᶊ":"s","ȿ":"s","ɡ":"g","ß":"ss","":"o","ᴓ":"o","ᴝ":"u","ť":"t","ţ":"t","ṱ":"t","ț":"t","ȶ":"t","ẗ":"t","ⱦ":"t","ṫ":"t","ṭ":"t","ƭ":"t","ṯ":"t","ᵵ":"t","ƫ":"t","ʈ":"t","ŧ":"t","ᵺ":"th","ɐ":"a","ᴂ":"ae","ǝ":"e","ᵷ":"g","ɥ":"h","ʮ":"h","ʯ":"h","ᴉ":"i","ʞ":"k","ꞁ":"l","ɯ":"m","ɰ":"m","ᴔ":"oe","ɹ":"r","ɻ":"r","ɺ":"r","ⱹ":"r","ʇ":"t","ʌ":"v","ʍ":"w","ʎ":"y","ꜩ":"tz","ú":"u","ŭ":"u","ǔ":"u","û":"u","ṷ":"u","ü":"u","ǘ":"u","ǚ":"u","ǜ":"u","ǖ":"u","ṳ":"u","ụ":"u","ű":"u","ȕ":"u","ù":"u","ủ":"u","ư":"u","ứ":"u","ự":"u","ừ":"u","ử":"u","ữ":"u","ȗ":"u","ū":"u","ṻ":"u","ų":"u","ᶙ":"u","ů":"u","ũ":"u","ṹ":"u","ṵ":"u","ᵫ":"ue","":"um","ⱴ":"v","ꝟ":"v","ṿ":"v","ʋ":"v","":"v","ⱱ":"v","ṽ":"v","ꝡ":"vy","ẃ":"w","ŵ":"w","ẅ":"w","ẇ":"w","ẉ":"w","ẁ":"w","ⱳ":"w","ẘ":"w","ẍ":"x","ẋ":"x","ᶍ":"x","ý":"y","ŷ":"y","ÿ":"y","ẏ":"y","ỵ":"y","ỳ":"y","ƴ":"y","ỷ":"y","ỿ":"y","ȳ":"y","ẙ":"y","ɏ":"y","ỹ":"y","ź":"z","ž":"z","ẑ":"z","ʑ":"z","ⱬ":"z","ż":"z","ẓ":"z","ȥ":"z","ẕ":"z","ᵶ":"z","ᶎ":"z","ʐ":"z","ƶ":"z","ɀ":"z","ff":"ff","ffi":"ffi","ffl":"ffl","fi":"fi","fl":"fl","ij":"ij","œ":"oe","st":"st","ₐ":"a","ₑ":"e","ᵢ":"i","ⱼ":"j","ₒ":"o","ᵣ":"r","ᵤ":"u","ᵥ":"v","ₓ":"x","Ё":"YO","Й":"I","Ц":"TS","У":"U","К":"K","Е":"E","Н":"N","Г":"G","Ш":"SH","Щ":"SCH","З":"Z","Х":"H","Ъ":"","ё":"yo","й":"i","ц":"ts","у":"u","к":"k","е":"e","н":"n","г":"g","ш":"sh","щ":"sch","з":"z","х":"h","ъ":"","Ф":"F","Ы":"I","В":"V","А":"A","П":"P","Р":"R","О":"O","Л":"L","Д":"D","Ж":"ZH","Э":"E","ф":"f","ы":"i","в":"v","а":"a","п":"p","р":"r","о":"o","л":"l","д":"d","ж":"zh","э":"e","Я":"Ya","Ч":"CH","С":"S","М":"M","И":"I","Т":"T","Ь":"","Б":"B","Ю":"YU","я":"ya","ч":"ch","с":"s","м":"m","и":"i","т":"t","ь":"","б":"b","ю":"yu"};t.mediaSizes=new class{constructor(){this.sizes={handhelds:{regular:{width:293,height:293},webpage:{width:293,height:213},album:{width:293,height:0}},desktop:{regular:{width:480,height:480},webpage:{width:480,height:400},album:{width:451,height:0}}},this.isMobile=!1,window.addEventListener("resize",()=>this.handleResize()),this.handleResize()}handleResize(){const e=window.innerWidth;this.isMobile=e<=896,this.active=this.isMobile?this.sizes.handhelds:this.sizes.desktop}},t.touchSupport="ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch,t.isServiceWorkerSupported="serviceWorker"in navigator;const n={Emoji:t.Emoji,LatinizeMap:t.LatinizeMap,TLD:t.TLD,Countries:t.Countries,MediaSizes:t.mediaSizes,touchSupport:t.touchSupport,isApple:i.isApple,isSafari:i.isSafari,isAndroid:i.isAndroid};window.Config=n,t.default=n},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(0),a=i(s(16)),o=i(s(71)),r=s(10),d=i(s(53)),f=i(s(73)),l=s(1);class c extends o.default{constructor(){super(),this.taskID=0,this.awaiting={},this.pending=[],this.updatesProcessor=null,this.log=r.logger("API-PROXY"),this.log("constructor"),this.registerServiceWorker(),this.registerWorker()}registerServiceWorker(){l.isServiceWorkerSupported&&(navigator.serviceWorker.register("./sw.js",{scope:"./"}).then(e=>{},e=>{this.log.error("SW registration failed!",e)}),navigator.serviceWorker.ready.then(e=>{this.log("set SW"),this.releasePending()}),navigator.serviceWorker.addEventListener("controllerchange",()=>{this.log.warn("controllerchange"),this.releasePending(),navigator.serviceWorker.controller.addEventListener("error",e=>{this.log.error("controller error:",e)})}),navigator.serviceWorker.addEventListener("message",e=>{const t=e.data;n.isObject(t)&&this.postMessage(t)}),navigator.serviceWorker.addEventListener("messageerror",e=>{this.log.error("SW messageerror:",e)}))}registerWorker(){const e=new f.default;e.addEventListener("message",t=>{this.worker||(this.worker=e,this.log("set webWorker"),this.postMessage=this.worker.postMessage.bind(this.worker),this.releasePending());const s=t.data;n.isObject(s)&&(s.useLs?a.default[s.task](...s.args).then(e=>{this.postMessage({useLs:!0,taskID:s.taskID,args:e})}):s.update?this.updatesProcessor&&this.updatesProcessor(s.update.obj,s.update.bool):s.progress?n.$rootScope.$broadcast("download_progress",s.progress):"convertWebp"==s.type?d.default.postMessage(s):"requestFilePart"==s.type?navigator.serviceWorker.controller.postMessage(s):this.finalizeTask(s.taskID,s.result,s.error))})}finalizeTask(e,t,s){const i=this.awaiting[e];void 0!==i&&(this.log.debug("done",i.taskName,t,s),void 0===t?i.reject(s):i.resolve(t),delete this.awaiting[e])}performTaskWorker(e,...t){return this.log.debug("start",e,t),new Promise((s,i)=>{this.awaiting[this.taskID]={resolve:s,reject:i,taskName:e};const n={task:e,taskID:this.taskID,args:t};this.pending.push(n),this.releasePending(),this.taskID++})}releasePending(){this.postMessage&&(this.log.debug("releasing tasks, length:",this.pending.length),this.pending.forEach(e=>{this.postMessage(e)}),this.log.debug("released tasks"),this.pending.length=0)}setUpdatesProcessor(e){this.updatesProcessor=e}invokeApi(e,t={},s={}){return this.performTaskWorker("invokeApi",e,t,s)}setBaseDcID(e){return this.performTaskWorker("setBaseDcID",e)}setUserAuth(e){return n.$rootScope.$broadcast("user_auth",e),this.performTaskWorker("setUserAuth",e)}getNetworker(e){return this.performTaskWorker("getNetworker",e)}getUserID(){return this.performTaskWorker("getUserID")}logOut(){return this.performTaskWorker("logOut")}cancelDownload(e){return this.performTaskWorker("cancelDownload",e)}downloadFile(e){return this.performTaskWorker("downloadFile",e)}uploadFile(e){return this.performTaskWorker("uploadFile",e)}}const u=new c;t.default=u},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RichTextProcessor=void 0;const n=s(0),a=i(s(1)),o=i(s(75)),r=s(76);var d,f={emojiMap:e=>e,shortcuts:[],emojis:[]},l=a.default.Emoji,c=-1!=navigator.userAgent.search(/OS X|iPhone|iPad|iOS/i),u=new RegExp("(^| )(@)([a-zA-Z\\d_]{5,32})|(((?:https?|ftp)://|mailto:)?(?:\\S{1,64}(?::\\S{0,64})?@)?(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(?:\\.(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])){3}|[a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc0-9][a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc·0-9-]{0,64}(?:\\.[a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc0-9][a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc·0-9-]{0,64}){0,10}(?:\\.(xn--[0-9a-z]{2,16}|[a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc]{2,24})))(?::\\d{2,5})?(?:/(?:\\S{0,255}[^\\s.;,(\\[\\]{}<>\"'])?)?)|(\\n)|("+o.default+")|(^|[\\s\\(\\]])(#[0-9_a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc]{2,64})|(^|\\s)\\/([a-zA-Z\\d_]{1,32})(?:@([a-zA-Z\\d_]{5,32}))?(\\b|$)","i"),h=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,p=/[`_*@]/,m=/(^|\s|\n)(````?)([\s\S]+?)(````?)([\s\n\.,:?!;]|$)|(^|\s)(`|\*\*|__)([^\n]+?)\7([\s\.,:?!;]|$)|@(\d+)\s*\((.+?)\)/m,g={Telegram:"tg://search_hashtag?hashtag={1}",Twitter:"https://twitter.com/hashtag/{1}",Instagram:"https://instagram.com/explore/tags/{1}/","Google Plus":"https://plus.google.com/explore/{1}"},b={Telegram:"#/im?p=%40{1}",Twitter:"https://twitter.com/{1}",Instagram:"https://instagram.com/{1}/",GitHub:"https://github.com/{1}"},v={"`":"messageEntityCode","**":"messageEntityBold",__:"messageEntityItalic"};function y(e){let t=r.encodeEmoji(e);return"1f441-200d-1f5e8"==t&&(t="1f441-fe0f-200d-1f5e8-fe0f"),l.hasOwnProperty(t)?t.replace(/(-fe0f|fe0f)/g,""):null}function w(e,t={}){for(var s,i,n=e,o=[],r=0;s=n.match(u);){if(i=r+s.index,s[3])o.push({_:"messageEntityMention",offset:i+s[1].length,length:s[2].length+s[3].length});else if(s[4])if(h.test(s[4]))o.push({_:"messageEntityEmail",offset:i,length:s[4].length});else{var d=!1,f=s[5],l=s[6];if(l){if(f||"xn--"!==l.substr(0,4)&&-1===a.default.TLD.indexOf(l.toLowerCase())||(f="http://"),f){var c=L(s[4]);c.length!==s[4].length&&(s[4].substring(c.length),s[4]=c),d=(s[5]?"":f)+s[4]}}else d=(s[5]?"":"http://")+s[4];d&&o.push({_:"messageEntityUrl",offset:i,length:s[4].length})}else if(s[7])o.push({_:"messageEntityLinebreak",offset:i,length:1});else if(s[8]){let e=y(s[8]);e&&o.push({_:"messageEntityEmoji",offset:i,length:s[8].length,unicode:e})}else s[10]?o.push({_:"messageEntityHashtag",offset:i+(s[9]?s[9].length:0),length:s[10].length}):s[12]&&o.push({_:"messageEntityBotCommand",offset:i+(s[11]?s[11].length:0),length:1+s[12].length+(s[13]?1+s[13].length:0)});n=n.substr(s.index+s[0].length),r+=s.index+s[0].length}return o}function _(e,t,s){return void 0===t?n.encodeEntities(e):(s.hasNested=!0,S(e,{entities:t,nested:!0}))}function S(e,t={}){if(!e||!e.length)return"";var s=t.entities,i=t.contextSite||"Telegram",a="Telegram"!=i;void 0===s&&(s=w(e,t));for(var o,r,d,f,l=s.length,u=[],h=0,p=0;p<l;p++){if((o=s[p]).offset>h)u.push(n.encodeEntities(e.substr(h,o.offset-h)));else if(o.offset<h)continue;switch(d=!1,r=e.substr(o.offset,o.length),o._){case"messageEntityMention":if(!(y=!t.noLinks&&b[i])){d=!0;break}var m=r.substr(1),v="";t.highlightUsername&&t.highlightUsername.toLowerCase()==m.toLowerCase()&&(v='class="im_message_mymention"'),u.push("<a ",v,a?' target="_blank" rel="noopener noreferrer" ':"",' href="',y.replace("{1}",encodeURIComponent(m)),'">',n.encodeEntities(r),"</a>");break;case"messageEntityMentionName":if(t.noLinks){d=!0;break}u.push('<a href="#/im?p=u',encodeURIComponent(o.user_id),'">',n.encodeEntities(r),"</a>");break;case"messageEntityHashtag":var y;if(!(y=!t.noLinks&&g[i])){d=!0;break}var S=r.substr(1);u.push("<a ",a?' target="_blank" rel="noopener noreferrer" ':"",'href="',y.replace("{1}",encodeURIComponent(S)),'">',n.encodeEntities(r),"</a>");break;case"messageEntityEmail":if(t.noLinks){d=!0;break}u.push('<a href="',n.encodeEntities("mailto:"+r),'" target="_blank" rel="noopener noreferrer">',n.encodeEntities(r),"</a>");break;case"messageEntityUrl":case"messageEntityTextUrl":var L;"messageEntityTextUrl"==o._?(f=M(f=o.url,!0),L=_(r,o.nested,t)):(f=M(r,!1),L=n.encodeEntities(r.replace(/(%[A-Z\d]{2})+/g,e=>{try{return decodeURIComponent(e)}catch(t){return e}}))),t.noLinks?u.push(L):u.push('<a href="',n.encodeEntities(f),'" target="_blank" rel="noopener noreferrer">',L,"</a>");break;case"messageEntityLinebreak":u.push(t.noLinebreaks?" ":"<br/>");break;case"messageEntityEmoji":u.push(c?`<span class="emoji" contenteditable="false">${n.encodeEntities(r)}</span>`:`<img src="assets/img/emoji/${o.unicode}.png" alt="${n.encodeEntities(r)}" class="emoji">`),!0;break;case"messageEntityBotCommand":if(t.noLinks||t.noCommands||a){d=!0;break}var D,E,I=r.substr(1);-1!=(E=I.indexOf("@"))?(D=I.substr(E+1),I=I.substr(0,E)):D=t.fromBot,u.push('<a href="',n.encodeEntities("tg://bot_command?command="+encodeURIComponent(I)+(D?"&bot="+encodeURIComponent(D):"")),'">',n.encodeEntities(r),"</a>");break;case"messageEntityBold":if(t.noTextFormat){u.push(_(r,o.nested,t));break}u.push("<strong>",_(r,o.nested,t),"</strong>");break;case"messageEntityItalic":if(t.noTextFormat){u.push(_(r,o.nested,t));break}u.push("<em>",_(r,o.nested,t),"</em>");break;case"messageEntityHighlight":u.push("<i>",_(r,o.nested,t),"</i>");break;case"messageEntityCode":if(t.noTextFormat){u.push(n.encodeEntities(r));break}u.push("<code>",n.encodeEntities(r),"</code>");break;case"messageEntityPre":if(t.noTextFormat){u.push(n.encodeEntities(r));break}u.push("<pre><code",o.language?' class="language-'+n.encodeEntities(o.language)+'"':"",">",n.encodeEntities(r),"</code></pre>");break;default:d=!0}h=o.offset+(d?0:o.length)}return u.push(n.encodeEntities(e.substr(h))),e=u.join("")}function L(e){for(var t=e.length,s=e.split("(").length-1,i=e.split(")").length-1;i>s&&")"===e.charAt(t-1);)e=e.substr(0,t-1),i--,t--;return s>i&&(e=e.replace(/\)+$/,"")),e}function M(e,t){var s,i;if(e.match(/^https?:\/\//i)||(e="http://"+e),2==t)e="tg://unsafe_url?url="+encodeURIComponent(e);else if(s=e.match(/^https?:\/\/t(?:elegram)?\.me\/(.+)/)){var n=s[1].split("/");switch(n[0]){case"joinchat":e="tg://join?invite="+n[1];break;case"addstickers":e="tg://addstickers?set="+n[1];break;default:if(n[1]&&n[1].match(/^\d+$/))e="tg://resolve?domain="+n[0]+"&post="+n[1];else if(1==n.length){var a=n[0].split("?"),o=a[0],r=a[1];if("iv"==o){var d=(r||"").match(/url=([^&=]+)/);if(d){e=d[1];try{e=decodeURIComponent(e)}catch(e){}return M(e,t)}}e="tg://resolve?domain="+o+(r?"&"+r:"")}}}else(i=e.match(/^https?:\/\/telesco\.pe\/([^/?]+)\/(\d+)/))?e="tg://resolve?domain="+i[1]+"&post="+i[2]:t&&(e="tg://unsafe_url?url="+encodeURIComponent(e));return e}let D={wrapRichText:S,wrapPlainText:function(e,t={}){if(c)return e;if(!e||!e.length)return"";var s,i,n=e=e.replace(/\ufe0f/g,"",e);for(e=[];s=n.match(u);)e.push(n.substr(0,s.index)),s[8]&&(d=f.emojiMap[s[8]])&&(i=l[d][1][0])?e.push(":"+i+":"):e.push(s[0]),n=n.substr(s.index+s[0].length);return e.push(n),e.join("")},wrapDraftText:function(e,t={}){if(!e||!e.length)return"";var s=t.entities;void 0===s&&(s=w(e,t));var i,n,a,o=0,r=s.length,d=[],f=0;for(o=0;o<r;o++){if((i=s[o]).offset>f)d.push(e.substr(f,i.offset-f));else if(i.offset<f)continue;switch(a=!1,n=e.substr(i.offset,i.length),i._){case"messageEntityEmoji":d.push(":",i.title,":");break;case"messageEntityCode":d.push("`",n,"`");break;case"messageEntityBold":d.push("**",n,"**");break;case"messageEntityItalic":d.push("__",n,"__");break;case"messageEntityPre":d.push("```",n,"```");break;case"messageEntityMentionName":d.push("@",i.user_id," (",n,")");break;default:a=!0}f=i.offset+(a?0:i.length)}return d.push(e.substr(f)),d.join("")},wrapUrl:M,wrapEmojiText:function(e){return e?S(e,{entities:w(e).filter(e=>"messageEntityEmoji"==e._)}):""},parseEntities:w,parseMarkdown:function(e,t,s){if(!p.test(e))return s?e:e.trim();for(var i,n,a=e,o=[],r=0;i=a.match(m);){n=r+i.index,o.push(a.substr(0,i.index)),r-=(e=i[3]||i[8]||i[11]).length,r+=(e=e.replace(/^\s+|\s+$/g,"")).length,e.match(/^`*$/)?o.push(i[0]):i[3]?("\n"==i[5]&&(i[5]="",r-=1),o.push(i[1]+e+i[5]),t.push({_:"messageEntityPre",language:"",offset:n+i[1].length,length:e.length}),r-=i[2].length+i[4].length):i[7]?(o.push(i[6]+e+i[9]),t.push({_:v[i[7]],offset:n+i[6].length,length:e.length}),r-=2*i[7].length):i[11]&&(o.push(e),t.push({_:"messageEntityMentionName",user_id:i[10],offset:n,length:e.length}),r-=i[0].length-e.length),a=a.substr(i.index+i[0].length),r+=i.index+i[0].length}return o.push(a),(o=o.join("")).replace(/\s+/g,"").length||(o=e,t.splice(0,t.length)),t.length||s||(o=o.trim()),o},parseEmojis:function(e){return e.replace(/:([a-z0-9\-\+\*_]+?):/gi,(function(e,t){var s=f.shortcuts[t];return void 0!==s?f.emojis[s][0]:e}))},mergeEntities:function(e,t,s){var i,a,o,r,d,f,l,c,u,h=t.slice(),p=e.length,m=t.length,g=0;for(i=0;i<p;i++)if(o=e[i],!s||"messageEntityLinebreak"==o._||"messageEntityEmoji"==o._){for(f=(d=o.offset)+o.length,u=!1,a=g;a<m;a++){if(c=(l=(r=t[a]).offset)+r.length,l<=d&&(g=a),d>=l&&d<c||f>l&&f<=c){s&&d>=l&&f<=c&&(void 0===r.nested&&(r.nested=[]),o.offset-=l,r.nested.push(n.copy(o))),u=!0;break}if(l>=f)break}u||h.push(o)}return h.sort((e,t)=>e.offset-t.offset),h},getEmojiSpritesheetCoords:y,emojiSupported:c};t.RichTextProcessor=D},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.attachContextMenuListener=t.positionMenu=t.openBtnMenu=t.parseMenuButtonsTo=t.formatPhoneNumber=t.putPreloader=t.renderImageFromUrl=t.loadedURLs=void 0;const o=a(s(1));t.loadedURLs={};const r=(e,t)=>{e instanceof HTMLImageElement||e instanceof HTMLVideoElement?e.src=t:e instanceof SVGImageElement?e.setAttributeNS(null,"href",t):e.style.backgroundImage="url("+t+")"};t.renderImageFromUrl=function(e,s,i){if(t.loadedURLs[s]||e instanceof HTMLVideoElement)return r(e,s),i&&i(),!0;{const n=e instanceof HTMLImageElement,a=n?e:new Image;return a.src=s,a.addEventListener("load",()=>{n||r(e,s),t.loadedURLs[s]=!0,i&&i()}),i&&a.addEventListener("error",i),!1}},t.putPreloader=function(e,t=!1){const s='\n <svg xmlns="http://www.w3.org/2000/svg" class="preloader-circular" viewBox="25 25 50 50">\n <circle class="preloader-path" cx="50" cy="50" r="20" fill="none" stroke-miterlimit="10"/>\n </svg>';if(t){let t=document.createElement("div");return t.classList.add("preloader"),t.innerHTML=s,e&&e.appendChild(t),t}e.innerHTML+=s},t.formatPhoneNumber=function(e){let t=(e=e.replace(/\D/g,"")).slice(0,6),s=o.default.Countries.slice().sort((e,t)=>t.phoneCode.length-e.phoneCode.length).find(e=>e.phoneCode.split(" and ").find(e=>0==t.indexOf(e.replace(/\D/g,"")))),i=s?s.pattern||s.phoneCode:"";return s&&i.split("").forEach((t,s)=>{" "==t&&" "!=e[s]&&e.length>s&&(e=e.slice(0,s)+" "+e.slice(s))}),{formatted:e,country:s}},t.parseMenuButtonsTo=function(e,t){Array.from(t).forEach(t=>{const s=t.className.match(/(?:^|\s)menu-(.+?)(?:$|\s)/);s&&(e[s[1]]=t)})};let d=e=>{let t=c.getBoundingClientRect(),{clientX:s,clientY:i}=e,n=s>=t.right?s-t.right:t.left-s,a=i>=t.bottom?i-t.bottom:t.top-i;(n>=100||a>=100)&&l()},f=e=>{l()},l=()=>{c&&(c.classList.remove("active"),c.parentElement.classList.remove("menu-open"),c=null),u&&(u(),u=null),o.touchSupport?window.removeEventListener("touchmove",f):window.removeEventListener("mousemove",d),window.removeEventListener("click",f),window.removeEventListener("contextmenu",f)},c=null,u=null;t.openBtnMenu=function(e,t){l(),c=e,c.classList.add("active"),c.parentElement.classList.add("menu-open"),u=t,o.touchSupport?window.addEventListener("touchmove",f,{once:!0}):window.addEventListener("mousemove",d),window.addEventListener("click",f,{once:!0}),window.addEventListener("contextmenu",f,{once:!0})},t.positionMenu=function({clientX:e,clientY:t},s,i){let{scrollWidth:n,scrollHeight:a}=s,{innerWidth:r,innerHeight:d}=window;o.mediaSizes.isMobile&&(i=void 0),void 0===i&&e+n>r&&(e-n<0?s.style.left=r-n+"px":i="right"),i||(i="left"),s.classList.remove("bottom-left","bottom-right"),void 0!==i&&(s.style.left=("right"==i?e-n:e)+"px",s.classList.add("left"==i?"bottom-right":"bottom-left")),s.style.top=t+a>d?d-a+"px":t+"px"},t.attachContextMenuListener=function(e,t){if(o.isApple&&o.touchSupport){let s;const i=()=>{clearTimeout(s),e.removeEventListener("touchmove",i),e.removeEventListener("touchend",i),e.removeEventListener("touchcancel",i)};e.addEventListener("touchstart",n=>{n.touches.length>1?clearTimeout(s):(e.addEventListener("touchmove",i,{once:!0}),e.addEventListener("touchend",i,{once:!0}),e.addEventListener("touchcancel",i,{once:!0}),s=setTimeout(()=>{t(n.touches[0]),i()},400))})}else e.addEventListener("contextmenu",t)}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppUsersManager=void 0;const a=s(0),o=s(3),r=n(s(9)),d=n(s(2)),f=n(s(34)),l=s(4),c=n(s(38)),u=n(s(8)),h=n(s(40));class p{constructor(){this.users={},this.usernames={},this.userAccess={},this.cachedPhotoLocations={},this.contactsIndex=c.default.createIndex(),this.contactsList=new Set,d.default.getUserID().then(e=>{this.myID=e}),a.$rootScope.$on("user_auth",e=>{let t=e.detail;this.myID=t?t.id:0}),setInterval(this.updateUsersStatuses.bind(this),6e4),a.$rootScope.$on("stateSynchronized",this.updateUsersStatuses.bind(this)),a.$rootScope.$on("apiUpdate",e=>{let t=e.detail;switch(t._){case"updateUserStatus":var s=t.user_id;(i=this.users[s])&&(i.status=t.status,i.status&&(i.status.expires&&(i.status.expires-=f.default.serverTimeOffset),i.status.was_online&&(i.status.was_online-=f.default.serverTimeOffset)),i.sortStatus=this.getUserStatusForSort(i.status),a.$rootScope.$broadcast("user_update",s));break;case"updateUserPhoto":var i;s=t.user_id;(i=this.users[s])?(this.forceUserOnline(s),i.photo?a.safeReplaceObject(i.photo,t.photo):i.photo=t.photo,void 0!==this.cachedPhotoLocations[s]&&a.safeReplaceObject(this.cachedPhotoLocations[s],t.photo?t.photo:{empty:!0}),a.$rootScope.$broadcast("user_update",s),a.$rootScope.$broadcast("avatar_update",s)):console.warn("No user by id:",s)}})}fillContacts(){return this.contactsFillPromise?this.contactsFillPromise:this.contactsFillPromise=d.default.invokeApi("contacts.getContacts",{hash:0}).then(e=>(this.saveApiUsers(e.users),e.contacts.forEach(e=>{this.pushContact(e.user_id)}),this.contactsList))}resolveUsername(e){return i(this,void 0,void 0,(function*(){return this.usernames[e]?this.users[this.usernames[e]]:yield d.default.invokeApi("contacts.resolveUsername",{username:e}).then(t=>(this.saveApiUser(t.users[0]),r.default.saveApiChats(t.chats),this.users[this.usernames[e]]))}))}pushContact(e){this.contactsList.add(e),c.default.indexObject(e,this.getUserSearchText(e),this.contactsIndex)}getUserSearchText(e){const t=this.users[e];if(!t)return"";const s=t.pFlags.self?"user_name_saved_msgs_raw":"";return(t.first_name||"")+" "+(t.last_name||"")+" "+(t.phone||"")+" "+(t.username||"")+" "+s}getContacts(e){return this.fillContacts().then(t=>{let s=[...t];if(e){const t=c.default.search(e,this.contactsIndex);s=[...s].filter(e=>!!t[e])}return s.sort((e,t)=>{const s=(this.users[e]||{}).sortName||"",i=(this.users[t]||{}).sortName||"";return s.localeCompare(i)}),s})}saveApiUsers(e){e.forEach(e=>this.saveApiUser(e))}saveApiUser(e,t){if(a.isObject(e)&&!(t&&a.isObject(this.users[e.id])&&this.users[e.id].first_name)){var s=e.id,i=this.users[s];if(void 0===e.pFlags&&(e.pFlags={}),!e.pFlags.min||void 0===i){if(e.phone&&(e.rPhone="+"+l.formatPhoneNumber(e.phone).formatted),e.first_name?(e.rFirstName=o.RichTextProcessor.wrapRichText(e.first_name,{noLinks:!0,noLinebreaks:!0}),e.rFullName=e.last_name?o.RichTextProcessor.wrapRichText(e.first_name+" "+(e.last_name||""),{noLinks:!0,noLinebreaks:!0}):e.rFirstName):(e.rFirstName=o.RichTextProcessor.wrapRichText(e.last_name,{noLinks:!0,noLinebreaks:!0})||e.rPhone||"user_first_name_deleted",e.rFullName=o.RichTextProcessor.wrapRichText(e.last_name,{noLinks:!0,noLinebreaks:!0})||e.rPhone||"user_name_deleted"),e.username){var n=c.default.cleanUsername(e.username);this.usernames[n]=s}e.sortName=e.pFlags.deleted?"":c.default.cleanSearchText(e.first_name+" "+(e.last_name||""),!1);var r=e.sortName.split(" "),d=r.shift(),u=r.pop();e.initials=d.charAt(0)+(u?u.charAt(0):""),e.status&&(e.status.expires&&(e.status.expires-=f.default.serverTimeOffset),e.status.was_online&&(e.status.was_online-=f.default.serverTimeOffset)),e.pFlags.bot?e.sortStatus=-1:e.sortStatus=this.getUserStatusForSort(e.status),void 0===(i=this.users[s])?i=this.users[s]=e:a.safeReplaceObject(i,e),a.$rootScope.$broadcast("user_update",s),void 0!==this.cachedPhotoLocations[s]&&a.safeReplaceObject(this.cachedPhotoLocations[s],e&&e.photo?e.photo:{empty:!0})}}}saveUserAccess(e,t){this.userAccess[e]=t}getUserStatusForSort(e){if(e){var t=e.expires||e.was_online;if(t)return t;var s=a.tsNow(!0);switch(e._){case"userStatusRecently":return s-259200;case"userStatusLastWeek":return s-604800;case"userStatusLastMonth":return s-2592e3}}return 0}getUser(e){return a.isObject(e)?e:this.users[e]||{id:e,pFlags:{deleted:!0},access_hash:this.userAccess[e]}}getSelf(){return this.getUser(this.myID)}getUserStatusString(e){var t;if(this.isBot(e))return"bot";const s=this.getUser(e);if(!s)return"";let i="";switch(null===(t=s.status)||void 0===t?void 0:t._){case"userStatusRecently":i="last seen recently";break;case"userStatusLastWeek":i="last seen last week";break;case"userStatusLastMonth":i="last seen last month";break;case"userStatusOffline":{i="last seen ";const e=s.status.was_online,t=Date.now()/1e3;if(t-e<60)i+=" just now";else if(t-e<3600){const s=(t-e)/60|0;i+=s+" "+(1==s?"minute":"minutes")+" ago"}else if(t-e<86400){const s=(t-e)/3600|0;i+=s+" "+(1==s?"hour":"hours")+" ago"}else{const t=new Date(1e3*e);i+=("0"+t.getDate()).slice(-2)+"."+("0"+(t.getMonth()+1)).slice(-2)+" at "+("0"+t.getHours()).slice(-2)+":"+("0"+t.getMinutes()).slice(-2)}break}case"userStatusOnline":i="online";break;default:i="last seen a long time ago"}return i}isBot(e){return this.users[e]&&this.users[e].pFlags.bot}isContact(e){return this.contactsList.has(e)}isRegularUser(e){const t=this.users[e];return t&&!this.isBot(e)&&!t.pFlags.deleted&&!t.pFlags.support}isNonContactUser(e){return this.isRegularUser(e)&&!this.isContact(e)&&e!=a.$rootScope.myID}hasUser(e,t){var s=this.users[e];return a.isObject(s)&&(t||!s.pFlags.min)}getUserPhoto(e){var t=this.getUser(e);return void 0===this.cachedPhotoLocations[e]&&(this.cachedPhotoLocations[e]=t&&t.photo?t.photo:{empty:!0}),this.cachedPhotoLocations[e]}getUserString(e){var t=this.getUser(e);return"u"+e+(t.access_hash?"_"+t.access_hash:"")}getUserInput(e){var t=this.getUser(e);return t.pFlags&&t.pFlags.self?{_:"inputUserSelf"}:{_:"inputUser",user_id:e,access_hash:t.access_hash||0}}updateUsersStatuses(){var e=a.tsNow(!0);for(let t in this.users){let s=this.users[t];s.status&&"userStatusOnline"==s.status._&&s.status.expires<e&&(s.status=s.status.wasStatus||{_:"userStatusOffline",was_online:s.status.expires},delete s.status.wasStatus,a.$rootScope.$broadcast("user_update",s.id))}}forceUserOnline(e){if(!this.isBot(e)){var t,s=this.getUser(e);if(s&&s.status&&"userStatusOnline"!=s.status._&&"userStatusEmpty"!=s.status._)"userStatusOffline"!=s.status._&&(delete s.status.wasStatus,t=a.copy(s.status)),s.status={_:"userStatusOnline",expires:a.tsNow(!0)+60,wasStatus:t},s.sortStatus=this.getUserStatusForSort(s.status),a.$rootScope.$broadcast("user_update",e)}}getTopPeers(){return this.getPeersPromise?this.getPeersPromise:this.getPeersPromise=h.default.getState().then(e=>{var t;return(null===(t=null==e?void 0:e.topPeers)||void 0===t?void 0:t.length)?e.topPeers:d.default.invokeApi("contacts.getTopPeers",{flags:1,correspondents:!0,offset:0,limit:30,hash:0}).then(e=>{this.saveApiUsers(e.users),r.default.saveApiChats(e.chats);const t=e.categories[0].peers.map(e=>{const t=u.default.getPeerID(e.peer);return h.default.pushPeer(t),t});return h.default.pushToState("topPeers",t),t})})}searchContacts(e,t=20){return d.default.invokeApi("contacts.search",{q:e,limit:t}).then(e=>(this.saveApiUsers(e.users),r.default.saveApiChats(e.chats),e))}setUserStatus(e,t){if(!this.isBot(e)){var s=this.users[e];if(s){var i=t?{_:"userStatusOffline",was_online:a.tsNow(!0)}:{_:"userStatusOnline",expires:a.tsNow(!0)+500};s.status=i,s.sortStatus=this.getUserStatusForSort(s.status),a.$rootScope.$broadcast("user_update",e)}}}}t.AppUsersManager=p,t.default=new p},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(10),a=i(s(74)),o=s(1);window.__forceSmoothScrollPolyfill__=!0,a.default.polyfill();t.default=class{constructor(e,t="y",s="",i=e,a=300,r=15,d=document.createElement("div")){if(this.el=e,this.appendTo=i,this.onScrollOffset=a,this.splitCount=r,this.container=d,this.onScrolledTop=null,this.onScrolledBottom=null,this.onScrollMeasure=null,this.lastScrollTop=0,this.disableHoverTimeout=0,this.virtualTempIDTop=0,this.virtualTempIDBottom=0,this.lastTopID=0,this.lastBottomID=0,this.lastScrollDirection=0,this.scrollLocked=0,this.isVisible=!1,this.container.classList.add("scrollable"),this.visible=new Set,this.observer=new IntersectionObserver(e=>{const t=e.filter(e=>e.isIntersecting);if(e.forEach(e=>{const t=e.target;if(e.isIntersecting)this.setVisible(t),this.log.debug("intersection entry:",e,this.lastTopID,this.lastBottomID);else{const s=+t.dataset.virtual;e.boundingClientRect.top<0?this.lastTopID=s+1:this.lastBottomID=s-1}}),!t.length||0===this.lastScrollDirection)return;if(1===this.lastScrollDirection){let e=t[t.length-1].target;this.lastBottomID=+e.dataset.virtual;for(let t=0;t<this.splitCount&&(e=e.nextElementSibling,e);++t)this.setVisible(e)}else{let e=t[0].target;this.lastTopID=+e.dataset.virtual;for(let t=0;t<this.splitCount&&(e=e.previousElementSibling,e);++t)this.setVisible(e)}this.log.debug("entries:",e,t,this.lastScrollDirection,this.lastTopID,this.lastBottomID);const s=this.lastTopID-this.splitCount,i=this.lastBottomID+this.splitCount;for(const e of this.visible){const t=+e.dataset.virtual;(t<s||t>i)&&this.setHidden(e)}}),i||(this.appendTo=this.container),this.log=n.logger("SCROLL"+(s?"-"+s:""),n.LogLevels.error),"x"==t){if(this.container.classList.add("scrollable-x"),!o.touchSupport){const e=e=>{if(1==(e=window.event||e).which)return;const t=Math.max(-1,Math.min(1,e.wheelDelta||-e.detail));this.container.scrollLeft-=20*t,e.preventDefault()};this.container.addEventListener?(this.container.addEventListener("mousewheel",e,!1),this.container.addEventListener("DOMMouseScroll",e,!1)):this.container.attachEvent("onmousewheel",e)}}else{if("y"!=t)throw new Error("no side for scroll");this.container.classList.add("scrollable-y")}const f=this.onScroll.bind(this);window.addEventListener("resize",()=>{this.overflowContainer=(o.mediaSizes.isMobile,this.container),this.onScroll()}),this.container.addEventListener("scroll",f,{passive:!0,capture:!0}),e&&(Array.from(e.children).forEach(e=>this.container.append(e)),e.append(this.container)),this.overflowContainer=(o.mediaSizes.isMobile,this.container)}setVisible(e){this.visible.has(e)||(this.log.debug("setVisible id:",e.dataset.virtual),e.firstElementChild.style.display="",this.visible.add(e))}setHidden(e){this.visible.has(e)&&(this.log.debug("setHidden id:",e.dataset.virtual),e.firstElementChild.style.display="none",this.visible.delete(e))}setVirtualContainer(e){this.splitUp=e,this.lastScrollTop=0,this.log("setVirtualContainer:",e,this)}onScroll(){this.splitUp&&(clearTimeout(this.disableHoverTimeout),this.disableHoverTimeout=setTimeout(()=>{this.lastScrollDirection=0},100)),this.onScrollMeasure||(this.scrollLocked||!this.onScrolledTop&&!this.onScrolledBottom)&&!this.splitUp||(this.onScrollMeasure=window.requestAnimationFrame(()=>{if(this.checkForTriggers(this.overflowContainer),this.onScrollMeasure=0,!this.splitUp)return;const e=this.overflowContainer.scrollTop;this.lastScrollTop!=e?(this.lastScrollDirection=this.lastScrollTop<e?1:-1,this.lastScrollTop=e):this.lastScrollDirection=0}))}checkForTriggers(e){if(this.scrollLocked||!this.onScrolledTop&&!this.onScrolledBottom)return;const t=e.scrollHeight;if(!t)return;const{clientHeight:s,scrollTop:i}=e,n=t-s;this.onScrolledTop&&i<=this.onScrollOffset&&this.onScrolledTop(),this.onScrolledBottom&&n-i<=this.onScrollOffset&&this.onScrolledBottom()}reorder(){this.splitUp&&!this.reorderTimeout&&(this.reorderTimeout=setTimeout(()=>{this.reorderTimeout=0,Array.from(this.splitUp.children).forEach((e,t)=>{e.dataset.virtual=""+t})},0))}updateElement(e){e.style.minHeight="",window.requestAnimationFrame(()=>{const t=e.scrollHeight;window.requestAnimationFrame(()=>{e.style.minHeight=t+"px"})})}prepareElement(e,t=!0){this.splitUp&&(e.dataset.virtual=""+(t?this.virtualTempIDBottom++:this.virtualTempIDTop--),this.log.debug("prepareElement: prepared"),window.requestAnimationFrame(()=>{const{scrollHeight:t}=e;this.log.debug("prepareElement: first rAF"),window.requestAnimationFrame(()=>{e.style.minHeight=t+"px"}),this.visible.add(e),this.observer.observe(e)}))}prepend(e,t=!0){t&&this.prepareElement(e,!1),this.splitUp?this.splitUp.prepend(e):this.appendTo.prepend(e)}append(e,t=!0){t&&this.prepareElement(e),this.splitUp?this.splitUp.append(e):this.appendTo.append(e)}contains(e){return this.splitUp?!!e.parentElement:this.appendTo.contains(e)}scrollIntoView(e,t=!0){if(e.parentElement&&!this.scrollLocked){const s=e.classList.contains("is-first-unread");let i=e.getBoundingClientRect().top-this.container.getBoundingClientRect().top;if(i=this.container.scrollTop+i,!t&&s)return void this.scrollTo(i,!1);i-=(this.container.clientHeight-e.scrollHeight)/2,this.scrollTo(i,t)}}scrollTo(e,t=!0,s=!1){if(this.scrollLocked&&!s)return;this.scrollTop!=Math.floor(e)&&(this.scrollLocked&&clearTimeout(this.scrollLocked),this.scrollLocked=setTimeout(()=>{this.scrollLocked=0,this.onScroll()},468),this.container.scrollTo({behavior:t?"smooth":"auto",top:e}))}removeElement(e){e.remove()}set scrollTop(e){this.container.scrollTop=e}get scrollTop(){return this.container.scrollTop}get scrollHeight(){return this.container.scrollHeight}get length(){return this.appendTo.childElementCount}}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppMessagesManager=t.FiltersStorage=t.DialogsStorage=void 0;const a=s(0),o=n(s(33)),r=n(s(9)),d=n(s(5)),f=s(3),l=s(21),c=s(80),u=n(s(32)),h=n(s(13)),p=n(s(16)),m=n(s(8)),g=n(s(34)),b=n(s(11)),v=n(s(35)),y=n(s(34)),w=n(s(2)),_=n(s(55)),S=s(24),L=n(s(39)),M=n(s(38)),D=s(10),E=n(s(28));class I{constructor(){this.dialogs={},this.byFolders={},this.allDialogsLoaded={},this.dialogsOffsetDate={},this.pinnedOrders={0:[],1:[]},this.dialogsNum=0}getFolder(e){var t,s;if(e<=1)return null!==(t=this.byFolders[e])&&void 0!==t?t:this.byFolders[e]=[];const i=[],n=k.filtersStorage.filters[e];for(const e in this.dialogs){const t=this.dialogs[e];if(k.filtersStorage.testDialogForFilter(t,n)){let e;const a=n.pinned_peers.indexOf(t.peerID);e=-1!==a?this.generateDialogIndex(this.generateDialogPinnedDateByIndex(n.pinned_peers.length-1-a)):(null===(s=t.pFlags)||void 0===s?void 0:s.pinned)?this.generateIndexForDialog(t,!0):t.index,i.push({dialog:t,index:e})}}return i.sort((e,t)=>t.index-e.index),i.map(e=>e.dialog)}getDialog(e,t){const s=[];if(void 0===t){const e=this.byFolders;for(const t in e)s.push(e[t])}else s.push(this.getFolder(t));for(let t of s){const s=t.findIndex(t=>t.peerID==e);if(-1!==s)return[t[s],s]}return[]}generateDialogIndex(e){return void 0===e&&(e=a.tsNow(!0)+y.default.serverTimeOffset),65536*e+(65535&++this.dialogsNum)}generateIndexForDialog(e,t=!1){const s=m.default.isChannel(e.peerID)?-e.peerID:0,i=o.default.getFullMessageID(e.top_message,s);let n=k.getMessage(i).date;if(s){const e=r.default.getChat(s);(!n||e.date&&e.date>n)&&(n=e.date)}const a={};a&&a.date>n&&(n=a.date),e.pFlags.pinned&&!t&&(n=this.generateDialogPinnedDate(e));const d=this.generateDialogIndex(n);if(t)return d;e.index=d}generateDialogPinnedDateByIndex(e){return 2147418112+(65535&e)}generateDialogPinnedDate(e){const t=this.pinnedOrders[e.folder_id],s=t.indexOf(e.peerID),i=-1===s?t.push(e.peerID)-1:s;return this.generateDialogPinnedDateByIndex(i)}pushDialog(e,t){const s=this.getFolder(e.folder_id),i=s.findIndex(t=>t.peerID==e.peerID);if(-1!==i&&s.splice(i,1),this.dialogs[e.peerID]=e,t&&!e.pFlags.pinned&&(!this.dialogsOffsetDate[e.folder_id]||t<this.dialogsOffsetDate[e.folder_id])){if(-1!==i)return!1;this.dialogsOffsetDate[e.folder_id]=t}const n=e.index,a=s.length;if(!a||n<s[a-1].index)s.push(e);else if(n>=s[0].index)s.unshift(e);else for(let t=0;t<a;t++)if(n>s[t].index){s.splice(t,0,e);break}}dropDialog(e){const t=this.getDialog(e);return t[0]&&(this.byFolders[t[0].folder_id].splice(t[1],1),delete this.dialogs[e]),t}}t.DialogsStorage=I;class C{constructor(){this.filters={},this.orderIndex=0,a.$rootScope.$on("apiUpdate",e=>{this.handleUpdate(e.detail)})}handleUpdate(e){switch(e._){case"updateDialogFilter":e.filter?this.saveDialogFilter(e.filter):this.filters[e.id]&&(a.$rootScope.$broadcast("filter_delete",this.filters[e.id]),delete this.filters[e.id])}}testDialogForFilter(e,t){var s;for(const s of t.exclude_peers)if(s==e.peerID)return!1;for(const s of t.include_peers)if(s==e.peerID)return!0;const i=t.pFlags;if(i.exclude_archived&&1==e.folder_id)return!1;if(i.exclude_read&&!e.unread_count)return!1;if(i.exclude_muted){if(1e3*(null===(s=e.notify_settings)||void 0===s?void 0:s.mute_until)>Date.now())return!1}const n=e.peerID;if(n<0){if(i.broadcasts&&m.default.isBroadcast(n))return!0;if(i.groups&&m.default.isAnyGroup(n))return!0}else{if(m.default.isBot(n))return!!i.bots;if(i.non_contacts&&!d.default.contactsList.has(n))return!0;if(i.contacts&&d.default.contactsList.has(n))return!0}return!1}toggleDialogPin(e,t){const s=this.filters[t];return s.pinned_peers.findAndSplice(t=>t==e)||s.pinned_peers.unshift(e),this.updateDialogFilter(s)}createDialogFilter(e){let t=Math.max(1,...Object.keys(this.filters).map(e=>+e));return(e=a.copy(e)).id=t+1,this.updateDialogFilter(e)}updateDialogFilter(e,t=!1){const s=t?0:1;if(!t){e.flags=0;const t={contacts:0,non_contacts:1,groups:2,broadcasts:3,bots:4,exclude_muted:11,exclude_read:12,exclude_archived:13};for(const s in t)e.pFlags[s]&&(e.flags|=1<<t[s]);e.emoticon&&(e.flags|=1<<25)}return w.default.invokeApi("messages.updateDialogFilter",{flags:s,id:e.id,filter:t?void 0:this.getOutputDialogFilter(e)}).then(s=>(s&&this.handleUpdate({_:"updateDialogFilter",id:e.id,filter:t?void 0:e}),s))}getOutputDialogFilter(e){const t=a.copy(e);return["pinned_peers","exclude_peers","include_peers"].forEach(e=>{t[e]=t[e].map(e=>m.default.getInputPeerByID(e))}),t.include_peers.forEachReverse((e,s)=>{t.pinned_peers.includes(e)&&t.include_peers.splice(s,1)}),t}getDialogFilters(e=!1){return i(this,void 0,void 0,(function*(){if(Object.keys(this.filters).length&&!e)return this.filters;const t=yield w.default.invokeApi("messages.getDialogFilters");for(const e of t)this.saveDialogFilter(e,!1);return this.filters}))}saveDialogFilter(e,t=!0){["pinned_peers","exclude_peers","include_peers"].forEach(t=>{e[t]=e[t].map(e=>m.default.getPeerID(e))}),e.include_peers.forEachReverse((t,s)=>{e.pinned_peers.includes(t)&&e.include_peers.splice(s,1)}),e.include_peers=e.pinned_peers.concat(e.include_peers),this.filters[e.id]?Object.assign(this.filters[e.id],e):this.filters[e.id]=e,this.setOrderIndex(e),t&&a.$rootScope.$broadcast("filter_update",e)}setOrderIndex(e){e.hasOwnProperty("orderIndex")?e.orderIndex>this.orderIndex&&(this.orderIndex=e.orderIndex):e.orderIndex=this.orderIndex++}}t.FiltersStorage=C;class P{constructor(){this.messagesStorage={},this.groupedMessagesStorage={},this.historiesStorage={},this.pinnedMessages={},this.pendingByRandomID={},this.pendingByMessageID={},this.pendingAfterMsgs={},this.pendingTopMsgs={},this.sendFilePromise=Promise.resolve(),this.tempID=-1,this.tempFinalizeCallbacks={},this.lastSearchFilter={},this.lastSearchResults=[],this.needSingleMessages=[],this.fetchSingleMessagesTimeout=0,this.fetchSingleMessagesPromise=null,this.maxSeenID=0,this.migratedFromTo={},this.migratedToFrom={},this.newMessagesHandlePromise=0,this.newMessagesToHandle={},this.newDialogsHandlePromise=0,this.newDialogsToHandle={},this.newUpdatesAfterReloadToHandle={},this.reloadConversationsPeers=[],this.dialogsIndex=M.default.createIndex(),this.cachedResults={query:"",count:0,dialogs:[]},this.log=D.logger("MESSAGES",D.LogLevels.error),this.dialogsStorage=new I,this.filtersStorage=new C,this.handleNewMessages=()=>{clearTimeout(this.newMessagesHandlePromise),this.newMessagesHandlePromise=0,a.$rootScope.$broadcast("history_multiappend",this.newMessagesToHandle),this.newMessagesToHandle={}},this.handleNewDialogs=()=>{clearTimeout(this.newDialogsHandlePromise),this.newDialogsHandlePromise=0;let e=0;for(const t in this.newDialogsToHandle){const s=this.newDialogsToHandle[t];"reload"in s?(this.reloadConversation(+t),delete this.newDialogsToHandle[t]):(this.dialogsStorage.pushDialog(s),m.default.isChannel(+t)||(e=Math.max(e,s.top_message||0)))}0!=e&&this.incrementMaxSeenID(e),a.$rootScope.$broadcast("dialogs_multiupdate",this.newDialogsToHandle),this.newDialogsToHandle={}},a.$rootScope.$on("apiUpdate",e=>{this.handleUpdate(e.detail)}),a.$rootScope.$on("webpage_updated",e=>{let t=e.detail;t.msgs.forEach(e=>{let s=this.getMessage(e);s.webpage=_.default.getWebPage(t.id),a.$rootScope.$broadcast("message_edit",{peerID:this.getMessagePeer(s),id:s.id,mid:e,justMedia:!0})})}),a.$rootScope.$on("draft_updated",e=>{let t=e.detail;var s=t.peerID,i=t.draft,n=this.getDialogByPeerID(s)[0];if(n){if(i&&i.date)d=i.date;else{var o=m.default.isChannel(s)?-s:0,d=this.getMessage(n.top_message).date;if(o){var f=r.default.getChat(o);(!d||f.date&&f.date>d)&&(d=f.date)}}n.pFlags.pinned||(n.index=this.dialogsStorage.generateDialogIndex(d)),this.dialogsStorage.pushDialog(n),a.$rootScope.$broadcast("dialog_draft",{peerID:s,draft:i,index:n.index})}})}getInputEntities(e){var t=a.copy(e);return t.forEach(e=>{"messageEntityMentionName"==e._&&(e._="inputMessageEntityMentionName",e.user_id=d.default.getUserInput(e.user_id))}),t}editMessage(e,t,s={}){if("string"!=typeof t||!this.canEditMessage(e))return Promise.reject();if(e<0){return void 0===this.tempFinalizeCallbacks[e]&&(this.tempFinalizeCallbacks[e]={}),new Promise((s,i)=>{this.tempFinalizeCallbacks[e].edit=e=>{this.log("invoke callback",e),this.editMessage(e,t).then(s,i)}})}var i=[];t=f.RichTextProcessor.parseMarkdown(t,i);var n=this.getMessage(e),a=this.getMessagePeer(n),r=0;let d=s.noWebPage||!1;return d&&(r|=2),t&&(r|=2056),w.default.invokeApi("messages.editMessage",{flags:r,peer:m.default.getInputPeerByID(a),id:o.default.getMessageLocalID(e),message:t,media:n.media,entities:this.getInputEntities(i),no_webpage:d}).then(e=>{u.default.processUpdateMessage(e)},e=>{if(!e||"MESSAGE_NOT_MODIFIED"!=e.type)return e&&"MESSAGE_EMPTY"==e.type&&(e.handled=!0),Promise.reject(e);e.handled=!0})}sendText(e,t,s={}){if("string"!=typeof t)return;e=m.default.getPeerMigratedTo(e)||e;var i=s.entities||[];if(s.viaBotID||(t=f.RichTextProcessor.parseMarkdown(t,i)),!t.length)return;var n,r=this.getInputEntities(i),c=this.tempID--,h=[l.nextRandomInt(4294967295),l.nextRandomInt(4294967295)],p=l.bigint(h[0]).shiftLeft(32).add(l.bigint(h[1])).toString(),g=this.historiesStorage[e],b=0,v={},_=s.replyToMsgID,S=m.default.isChannel(e),L=S&&m.default.isMegagroup(e),M=!(!S||L);let D=s.noWebPage||!1;void 0===g&&(g=this.historiesStorage[e]={count:null,history:[],pending:[]});var E=d.default.getSelf().id;e!=E&&(b|=2,v.out=!0,S||d.default.isBot(e)||(b|=1,v.unread=!0)),_&&(b|=8),M?(E=0,v.post=!0):b|=256,n={_:"message",id:c,from_id:E,to_id:m.default.getOutputPeer(e),flags:b,pFlags:v,date:a.tsNow(!0)+y.default.serverTimeOffset,message:t,random_id:p,reply_to_msg_id:_,via_bot_id:s.viaBotID,reply_markup:s.reply_markup,entities:i,views:M&&1,pending:!0},s.webPage&&(n.media={_:"messageMediaWebPage",webpage:s.webPage});var I=e=>{e?n.error=!0:delete n.error,a.$rootScope.$broadcast("messages_pending")};n.send=()=>{I(!1);var i={};this.pendingAfterMsgs[e]&&(i.afterMessageID=this.pendingAfterMsgs[e].messageID);var a,d=0;_&&(d|=1),M&&(d|=16),s.clearDraft&&(d|=128),D&&(d|=2),s.viaBotID?a=w.default.invokeApi("messages.sendInlineBotResult",{flags:d,peer:m.default.getInputPeerByID(e),random_id:h,reply_to_msg_id:o.default.getMessageLocalID(_),query_id:s.queryID,id:s.resultID},i):(r.length&&(d|=8),a=w.default.invokeApi("messages.sendMessage",{flags:d,no_webpage:D,peer:m.default.getInputPeerByID(e),message:t,random_id:h,reply_to_msg_id:o.default.getMessageLocalID(_),entities:r},i)),a.then(e=>{"updateShortSentMessage"==e._?(n.flags=e.flags,n.date=e.date,n.id=e.id,n.media=e.media,n.entities=e.entities,e={_:"updates",users:[],chats:[],seq:0,updates:[{_:"updateMessageID",random_id:p,id:e.id},{_:S?"updateNewChannelMessage":"updateNewMessage",message:n,pts:e.pts,pts_count:e.pts_count}]}):e.updates&&e.updates.forEach(e=>{"updateDraftMessage"==e._&&(e.local=!0)}),u.default.processUpdateMessage(e)},()=>{I(!0)}).finally(()=>{this.pendingAfterMsgs[e]===i&&delete this.pendingAfterMsgs[e]}),this.pendingAfterMsgs[e]=i},this.saveMessages([n]),g.pending.unshift(c),a.$rootScope.$broadcast("history_append",{peerID:e,messageID:c,my:!0}),setTimeout(()=>n.send(),0),this.pendingByRandomID[p]=[e,c]}sendFile(e,t,s={}){var i;e=m.default.getPeerMigratedTo(e)||e;var n,r,c=this.tempID--,p=[l.nextRandomInt(4294967295),l.nextRandomInt(4294967295)],y=l.bigint(p[0]).shiftLeft(32).add(l.bigint(p[1])).toString(),_=null!==(i=this.historiesStorage[e])&&void 0!==i?i:this.historiesStorage[e]={count:null,history:[],pending:[]},L=0,M={},D=s.replyToMsgID,I=m.default.isChannel(e),C=I&&m.default.isMegagroup(e),P=!(!I||C);const k="mime_type"in t?t.mime_type:t.type,T=t instanceof File?t.name:"",A=!(t instanceof File||t instanceof Blob);let X=s.caption||"";const x=a.tsNow(!0)+g.default.serverTimeOffset;if(this.log("sendFile",t,k),X){let e=s.entities||[];X=f.RichTextProcessor.parseMarkdown(X,e)}const F=[];let B="";if(s.isMedia)if(A)n="document",r="";else if(["image/jpeg","image/png","image/bmp"].indexOf(k)>=0){n="photo",r="photo."+k.split("/")[1],B="sendMessageUploadPhotoAction";let e={_:"photo",id:""+c,sizes:[{_:"photoSize",w:s.width,h:s.height,type:"m",size:t.size}],w:s.width,h:s.height,downloaded:t.size,url:s.objectURL||""};h.default.savePhoto(e)}else if(0===k.indexOf("audio/")||["video/ogg"].indexOf(k)>=0){n="audio",r="audio."+("ogg"==k.split("/")[1]?"ogg":"mp3"),B="sendMessageUploadAudioAction";let e=0;s.isVoiceMessage&&(e|=1024,e|=4,n="voice");let t={_:"documentAttributeAudio",flags:e,pFlags:{voice:s.isVoiceMessage},waveform:s.waveform,voice:s.isVoiceMessage,duration:s.duration||0};F.push(t)}else if(0===k.indexOf("video/")){n="video",r="video.mp4",B="sendMessageUploadVideoAction";let e=1;s.isRoundMessage&&(e|=2);let t={_:"documentAttributeVideo",flags:e,pFlags:{supports_streaming:!0,round_message:s.isRoundMessage},round_message:s.isRoundMessage,supports_streaming:!0,duration:s.duration,w:s.width,h:s.height};F.push(t)}else n="document",r="document."+k.split("/")[1],B="sendMessageUploadDocumentAction";else n="document",r="document."+k.split("/")[1],B="sendMessageUploadDocumentAction";if(F.push({_:"documentAttributeFilename",file_name:T||r}),-1!==["document","video","audio","voice"].indexOf(n)&&!A){let e={_:"document",id:""+c,duration:s.duration,attributes:F,w:s.width,h:s.height,downloaded:t.size,thumbs:[],mime_type:k,url:s.objectURL||"",size:t.size};b.default.saveDoc(e)}this.log("AMM: sendFile",n,r,t.type,s);var R=d.default.getSelf().id;e!=R&&(L|=2,M.out=!0,I||d.default.isBot(e)||(L|=1,M.unread=!0)),D&&(L|=8),P?(R=0,M.post=!0):L|=256;const O=new v.default(null,!0),j={_:"messageMediaPending",type:n,file_name:T||r,size:t.size,file:t,preloader:O,w:s.width,h:s.height,url:s.objectURL},U={_:"message",id:c,from_id:R,to_id:m.default.getOutputPeer(e),flags:L,pFlags:M,date:x,message:X,media:A?{_:"messageMediaDocument",pFlags:{},flags:1,document:t}:j,random_id:y,reply_to_msg_id:D,views:P&&1,pending:!0},N=e=>{e?U.error=!0:delete U.error,a.$rootScope.$broadcast("messages_pending")};let H=!1,$=null;const q=(t,i)=>(this.setTyping("sendMessageCancelAction"),w.default.invokeApi("messages.sendMedia",{flags:t,background:s.background,clear_draft:!0,peer:m.default.getInputPeerByID(e),media:i,message:X,random_id:p,reply_to_msg_id:o.default.getMessageLocalID(D)}).then(e=>{u.default.processUpdateMessage(e)},e=>{if("photo"==n&&400==e.code&&("PHOTO_INVALID_DIMENSIONS"==e.type||"PHOTO_SAVE_FILE_INVALID"==e.type))return e.handled=!0,n="document",void U.send();N(!0)}));U.send=()=>{let e=0;if(D&&(e|=1),s.background&&(e|=64),e|=128,A){const{id:s,access_hash:i,file_reference:n}=t;q(e,{_:"inputMediaDocument",flags:0,id:{_:"inputDocument",id:s,access_hash:i,file_reference:n}})}else if(t instanceof File||t instanceof Blob){const s=S.deferredPromise();this.sendFilePromise.then(()=>{H&&!U.error||(H=!1,$=E.default.upload(t),O.attachPromise($)),$&&$.then(t=>{var s;switch(this.log("appMessagesManager: sendFile uploaded:",t),t.name=r,H=!0,n){case"photo":s={_:"inputMediaUploadedPhoto",flags:0,file:t};break;default:s={_:"inputMediaUploadedDocument",file:t,mime_type:k,attributes:F}}q(e,s)},()=>{N(!0)}),$.addNotifyListener(e=>{this.log("upload progress",e);const t=Math.max(1,Math.floor(100*e.done/e.total));this.setTyping({_:B,progress:0|t})}),$.catch(e=>{"AbortError"!==e.name||H||(this.log("cancelling upload",j),s.resolve(),this.cancelPendingMessage(y),this.setTyping("sendMessageCancelAction"))}),$.finally(s.resolve)}),this.sendFilePromise=s}},this.saveMessages([U]),_.pending.unshift(c),a.$rootScope.$broadcast("history_append",{peerID:e,messageID:c,my:!0}),setTimeout(U.send.bind(this),0),this.pendingByRandomID[y]=[e,c]}sendAlbum(e,t,s={}){var n;return i(this,void 0,void 0,(function*(){let i;e=m.default.getPeerMigratedTo(e)||e;let r=null!==(n=this.historiesStorage[e])&&void 0!==n?n:this.historiesStorage[e]={count:null,history:[],pending:[]},c=0,p={},y=s.replyToMsgID,_=m.default.isChannel(e),L=_&&m.default.isMegagroup(e),M=!(!_||L),D=s.caption||"",I=a.tsNow(!0)+g.default.serverTimeOffset;if(D){let e=s.entities||[];D=f.RichTextProcessor.parseMarkdown(D,e)}this.log("AMM: sendAlbum",t,s);let C=d.default.getSelf().id;e!=C&&(p.out=!0,_||d.default.isBot(e)||(p.unread=!0)),y&&(c|=1),M?(C=0,p.post=!0):c|=128;let P=t.map(()=>this.tempID--).reverse();i=P[P.length-1];let k=t.map((t,n)=>{let a=P[n],o=[l.nextRandomInt(4294967295),l.nextRandomInt(4294967295)],d=l.bigint(o[0]).shiftLeft(32).add(l.bigint(o[1])).toString(),f=new v.default(null,!0),u=s.sendFileDetails[n],g={_:"messageMediaPending",type:"album",preloader:f,document:void 0,photo:void 0};if(0===t.type.indexOf("video/")){let e={_:"document",id:""+a,attributes:[{_:"documentAttributeVideo",flags:1,pFlags:{supports_streaming:!0,round_message:!1},round_message:!1,supports_streaming:!0,duration:u.duration,w:u.width,h:u.height}],downloaded:t.size,thumbs:[],mime_type:t.type,url:u.objectURL||"",size:t.size};b.default.saveDoc(e),g.document=e}else{let e={_:"photo",id:""+a,sizes:[{_:"photoSize",w:u.width,h:u.height,type:"m",size:t.size}],w:u.width,h:u.height,downloaded:t.size,url:u.objectURL||""};h.default.savePhoto(e),g.photo=e}let w={_:"message",id:a,from_id:C,grouped_id:i,to_id:m.default.getOutputPeer(e),flags:c,pFlags:p,date:I,message:D,media:g,random_id:d,randomID:o,reply_to_msg_id:y,views:M&&1,pending:!0,error:!1};return this.saveMessages([w]),r.pending.unshift(a),this.pendingByRandomID[d]=[e,a],w});a.$rootScope.$broadcast("history_append",{peerID:e,messageID:k[k.length-1].id,my:!0});let T=(e,t)=>{t?e.error=!0:delete e.error,a.$rootScope.$broadcast("messages_pending")},A=!1,X=null,x=m.default.getInputPeerByID(e),F=[];for(let e=0,i=t.length;e<i;++e){const i=t[e],n=k[e],a=n.media,o=a.preloader,r=0===i.type.indexOf("video/")?"sendMessageUploadVideoAction":"sendMessageUploadPhotoAction",d=S.deferredPromise();let f,l=!1;f=0===i.type.indexOf("video/")?"video.mp4":"photo."+i.type.split("/")[1],yield this.sendFilePromise,this.sendFilePromise=d,A&&!n.error||(A=!1,X=E.default.upload(i),o.attachPromise(X)),X.addNotifyListener(e=>{this.log("upload progress",e);const t=Math.max(1,Math.floor(100*e.done/e.total));this.setTyping({_:r,progress:0|t})}),X.catch(e=>{"AbortError"!==e.name||A||(this.log("cancelling upload item",a),l=!0)}),yield X.then(t=>{if(this.log("appMessagesManager: sendAlbum file uploaded:",t),l)return;let a;t.name=f;let o=s.sendFileDetails[e];return a=o.duration?{_:"inputMediaUploadedDocument",flags:0,file:t,mime_type:i.type,attributes:[{_:"documentAttributeVideo",flags:2,supports_streaming:!0,duration:o.duration,w:o.width,h:o.height}]}:{_:"inputMediaUploadedPhoto",flags:0,file:t},w.default.invokeApi("messages.uploadMedia",{peer:x,media:a}).then(e=>{if(l)return;let t;if(e.photo){let s=e.photo;h.default.savePhoto(s),t=h.default.getInput(s)}else{let s=e.document;b.default.saveDoc(s),t=b.default.getMediaInput(s)}F.push({_:"inputSingleMedia",flags:0,media:t,random_id:n.randomID,message:D,entities:[]}),D=""},()=>{T(n,!0)})},()=>{T(n,!0)}),this.log("appMessagesManager: sendAlbum uploadPromise.finally!"),d.resolve()}A=!0,(e=>{this.setTyping("sendMessageCancelAction"),w.default.invokeApi("messages.sendMultiMedia",{flags:c,peer:x,multi_media:e,reply_to_msg_id:o.default.getMessageLocalID(y)}).then(e=>{u.default.processUpdateMessage(e)},e=>{k.forEach(e=>T(e,!0))})})(F)}))}sendOther(e,t,s={}){var i;e=m.default.getPeerMigratedTo(e)||e;const n=this.tempID--,r=[l.nextRandomInt(4294967295),l.nextRandomInt(4294967295)],f=l.bigint(r[0]).shiftLeft(32).add(l.bigint(r[1])).toString(),c=null!==(i=this.historiesStorage[e])&&void 0!==i?i:this.historiesStorage[e]={count:null,history:[],pending:[]},h=s.replyToMsgID,p=m.default.isChannel(e),b=p&&m.default.isMegagroup(e),v=!(!p||b);let y,_=d.default.getSelf().id;switch(t._){case"inputMediaPoll":{t.poll.id=n,L.default.savePoll(t.poll,{_:"pollResults",flags:4,total_voters:0,pFlags:{}});const{poll:e,results:s}=L.default.getPoll(""+n);y={_:"messageMediaPoll",poll:e,results:s};break}}let S=0,M={};e!=_&&(S|=2,M.out=!0,d.default.isBot(e)||(S|=1,M.unread=!0)),h&&(S|=8),v?(_=0,M.post=!0):S|=256;const D={_:"message",id:n,from_id:_,to_id:m.default.getOutputPeer(e),flags:S,pFlags:M,date:a.tsNow(!0)+g.default.serverTimeOffset,message:"",media:y,random_id:f,reply_to_msg_id:h,via_bot_id:s.viaBotID,reply_markup:s.reply_markup,views:v&&1,pending:!0};D.send=()=>{let i=0;h&&(i|=1),v&&(i|=16),s.clearDraft&&(i|=128);const n={};let d;this.pendingAfterMsgs[e]&&(n.afterMessageID=this.pendingAfterMsgs[e].messageID),d=s.viaBotID?w.default.invokeApi("messages.sendInlineBotResult",{flags:i,peer:m.default.getInputPeerByID(e),random_id:r,reply_to_msg_id:o.default.getMessageLocalID(h),query_id:s.queryID,id:s.resultID},n):w.default.invokeApi("messages.sendMedia",{flags:i,peer:m.default.getInputPeerByID(e),media:t,random_id:r,reply_to_msg_id:o.default.getMessageLocalID(h)},n),d.then(e=>{e.updates&&e.updates.forEach(e=>{"updateDraftMessage"==e._&&(e.local=!0)}),u.default.processUpdateMessage(e)},e=>{a.$rootScope.$broadcast("messages_pending")}).finally(()=>{this.pendingAfterMsgs[e]===n&&delete this.pendingAfterMsgs[e]}),this.pendingAfterMsgs[e]=n},this.saveMessages([D]),c.pending.unshift(n),a.$rootScope.$broadcast("history_append",{peerID:e,messageID:n,my:!0}),setTimeout(D.send,0),this.pendingByRandomID[f]=[e,n]}cancelPendingMessage(e){var t=this.pendingByRandomID[e];if(this.log("cancelPendingMessage",e,t),t){var s=t[0],i=t[1],n=this.historiesStorage[s],a=n.pending.indexOf(i);return u.default.processUpdateMessage({_:"updateShort",update:{_:"updateDeleteMessages",messages:[i]}}),-1!=a&&n.pending.splice(a,1),delete this.messagesStorage[i],!0}return!1}getConversationsAll(e=""){return i(this,void 0,void 0,(function*(){const t=[];for(let s=0;s<2;++s){let i=0;for(;;){const{dialogs:n}=yield k.getConversations(e,i,100,s);if(!n.length)break;t.push(...n),i=n[n.length-1].index||0}}return t}))}getConversations(e="",t,s=20,i=0){const n=i>1?0:i;let a=this.dialogsStorage.getFolder(i);if(e){if(!s||this.cachedResults.query!==e){this.cachedResults.query=e;const t=M.default.search(e,this.dialogsIndex);this.cachedResults.dialogs=[];for(const e in this.dialogsStorage.dialogs){const s=this.dialogsStorage.dialogs[e];t[s.peerID]&&this.cachedResults.dialogs.push(s)}this.cachedResults.count=this.cachedResults.dialogs.length}a=this.cachedResults.dialogs}else this.cachedResults.query="";let o=0;if(t>0)for(;o<a.length&&!(t>a[o].index);o++);return e||this.dialogsStorage.allDialogsLoaded[n]||a.length>=o+s?Promise.resolve({dialogs:a.slice(o,o+s),count:this.dialogsStorage.allDialogsLoaded[n]?a.length:null}):this.getTopMessages(s,n).then(e=>{if(o=0,t>0)for(;o<a.length&&!(t>a[o].index);o++);return{dialogs:a.slice(o,o+s),count:e}})}getTopMessages(e,t){const s=this.dialogsStorage.getFolder(t);let i=0,n=0,f=0;return this.dialogsStorage.dialogsOffsetDate[t]&&(i=this.dialogsStorage.dialogsOffsetDate[t]+y.default.serverTimeOffset,n=65536*this.dialogsStorage.dialogsOffsetDate[t]),f|=2,w.default.invokeApi("messages.getDialogs",{flags:2,folder_id:t,offset_date:i,offset_id:o.default.getMessageLocalID(0),offset_peer:m.default.getInputPeerByID(0),limit:e,hash:0},{timeout:0}).then(e=>{i||c.telegramMeWebService.setAuthorized(!0),d.default.saveApiUsers(e.users),r.default.saveApiChats(e.chats),this.saveMessages(e.messages);var o=!!i,f=!1;let l=e.dialogs.length,u={};for(let t=l-1;t>=0;--t){let s=e.dialogs[t];this.saveConversation(s),n&&s.index>n&&(this.newDialogsToHandle[s.peerID]=s,f=!0),s.read_inbox_max_id||s.read_outbox_max_id||(u[s.peerID]=s),o||m.default.isChannel(m.default.getPeerID(s.peer))||(this.incrementMaxSeenID(s.top_message),o=!0)}return Object.keys(u).length&&this.reloadConversation(Object.keys(u).map(e=>+e)).then(()=>{a.$rootScope.$broadcast("dialogs_multiupdate",u);for(let e in u)a.$rootScope.$broadcast("dialog_unread",{peerID:+e})}),(!e.dialogs.length||!e.count||s.length>=e.count)&&(this.dialogsStorage.allDialogsLoaded[t]=!0),f?this.scheduleHandleNewDialogs():a.$rootScope.$broadcast("dialogs_multiupdate",{}),e.count})}forwardMessages(e,t,s={}){e=m.default.getPeerMigratedTo(e)||e,t=t.sort((e,t)=>e-t);var i=0;s.withMyScore&&(i|=256);let n=o.default.splitMessageIDsByChannels(t),a=[];for(let t in n.msgIDs){let s=n.msgIDs[t],o=s.length,r=[];for(let e=0;e<o;e++)r.push([l.nextRandomInt(4294967295),l.nextRandomInt(4294967295)]);let d={};this.pendingAfterMsgs[e]&&(d.afterMessageID=this.pendingAfterMsgs[e].messageID);let f=w.default.invokeApi("messages.forwardMessages",{flags:i,from_peer:m.default.getInputPeerByID(-t),id:s,random_id:r,to_peer:m.default.getInputPeerByID(e)},d).then(e=>{u.default.processUpdateMessage(e)},()=>{}).then(()=>{this.pendingAfterMsgs[e]===d&&delete this.pendingAfterMsgs[e]});this.pendingAfterMsgs[e]=d,a.push(f)}return Promise.all(a)}getMessage(e){return this.messagesStorage[e]||{_:"messageEmpty",deleted:!0,pFlags:{out:!1,unread:!1}}}getMessagePeer(e){var t=e.to_id&&m.default.getPeerID(e.to_id)||0;return t<0||e.pFlags&&e.pFlags.out||2&e.flags?t:e.from_id}getDialogByPeerID(e){return this.dialogsStorage.getDialog(e)}reloadConversation(e){return[].concat(e).forEach(e=>{this.reloadConversationsPeers.includes(e)||(this.reloadConversationsPeers.push(e),this.log("will reloadConversation",e))}),this.reloadConversationsPromise?this.reloadConversationsPromise:this.reloadConversationsPromise=new Promise((e,t)=>{setTimeout(()=>{let s=this.reloadConversationsPeers.map(e=>m.default.getInputPeerByID(e));this.reloadConversationsPeers.length=0,w.default.invokeApi("messages.getPeerDialogs",{peers:s}).then(t=>{this.applyConversations(t),e()},t).finally(()=>{this.reloadConversationsPromise=null})},0)})}doFlushHistory(e,t){let s=0;return t&&(s|=1),w.default.invokeApi("messages.deleteHistory",{flags:s,peer:e,max_id:0}).then(s=>(u.default.processUpdateMessage({_:"updateShort",update:{_:"updatePts",pts:s.pts,pts_count:s.pts_count}}),!s.offset||this.doFlushHistory(e,t)))}flushHistory(e,t){return i(this,void 0,void 0,(function*(){if(m.default.isChannel(e)){let t=this.getHistory(e,0,1),s=t instanceof Promise?yield t:t,i=-e,n=o.default.getMessageLocalID(s.history[0]||0);return w.default.invokeApi("channels.deleteHistory",{channel:r.default.getChannelInput(i),max_id:n}).then(()=>(u.default.processUpdateMessage({_:"updateShort",update:{_:"updateChannelAvailableMessages",channel_id:i,available_min_id:n}}),!0))}return this.doFlushHistory(m.default.getInputPeerByID(e),t).then(()=>{delete this.historiesStorage[e];for(let t in this.messagesStorage){this.messagesStorage[t].peerID==e&&delete this.messagesStorage[t]}t?a.$rootScope.$broadcast("dialog_flush",{peerID:e}):(this.dialogsStorage.dropDialog(e),a.$rootScope.$broadcast("dialog_drop",{peerID:e}))})}))}savePinnedMessage(e,t){t?(this.pinnedMessages[e]=t,this.wrapSingleMessage(t)):delete this.pinnedMessages[e]}getPinnedMessage(e){return this.getMessage(this.pinnedMessages[e]||0)}updatePinnedMessage(e,t){w.default.invokeApi("messages.updatePinnedMessage",{flags:0,peer:m.default.getInputPeerByID(e),id:t}).then(e=>{u.default.processUpdateMessage(e)})}saveMessages(e,t={}){e.forEach(e=>{var s;if(void 0===e.pFlags&&(e.pFlags={}),e.pFlags.out||(e.pFlags.out=!1),e.pFlags.unread||(e.pFlags.unread=!1),"messageEmpty"==e._)return;const i=this.getMessagePeer(e),n="peerChannel"==e.to_id._,a=n?-i:0,l=n&&r.default.isBroadcast(a),c=o.default.getFullMessageID(e.id,a);if(e.mid=c,e.grouped_id){(null!==(s=this.groupedMessagesStorage[e.grouped_id])&&void 0!==s?s:this.groupedMessagesStorage[e.grouped_id]={})[c]=e}const u=this.getDialogByPeerID(i)[0];u&&c>0?e.pFlags.unread=c>u[e.pFlags.out?"read_outbox_max_id":"read_inbox_max_id"]:t.isNew&&(e.pFlags.unread=!0),e.reply_to_msg_id&&(e.reply_to_mid=o.default.getFullMessageID(e.reply_to_msg_id,a)),e.date-=y.default.serverTimeOffset,e.peerID=i,e.fromID=e.pFlags.post?i:e.from_id;const p=e.fwd_from;if(p){if(i==d.default.getSelf().id){if(p.saved_from_peer&&p.saved_from_msg_id){const t=m.default.getPeerID(p.saved_from_peer),s=o.default.getFullMessageID(p.saved_from_msg_id,m.default.isChannel(t)?-t:0);e.savedFrom=t+"_"+s}e.fromID=p.channel_id?-p.channel_id:p.from_id}else e.fwdPostID=p.channel_post;e.fwdFromID=p.channel_id?-p.channel_id:p.from_id,p.date-=y.default.serverTimeOffset}e.via_bot_id>0&&(e.viaBotID=e.via_bot_id);const g={user_id:e.fromID,date:e.date};if(e.media)switch(e.media._){case"messageMediaEmpty":delete e.media;break;case"messageMediaPhoto":e.media.ttl_seconds?e.media={_:"messageMediaUnsupportedWeb"}:e.media.photo=h.default.savePhoto(e.media.photo,g);break;case"messageMediaPoll":e.media.poll=L.default.savePoll(e.media.poll,e.media.results);break;case"messageMediaDocument":e.media.ttl_seconds?e.media={_:"messageMediaUnsupportedWeb"}:e.media.document=b.default.saveDoc(e.media.document,g);break;case"messageMediaWebPage":_.default.saveWebPage(e.media.webpage,e.mid,g);break;case"messageMediaInvoice":e.media={_:"messageMediaUnsupportedWeb"};break;case"messageMediaGeoLive":e.media._="messageMediaGeo"}if(e.action){let t,s;switch(e.action._){case"messageActionChatEditPhoto":e.action.photo=h.default.savePhoto(e.action.photo,g),l&&(e.action._="messageActionChannelEditPhoto");break;case"messageActionChatEditTitle":l&&(e.action._="messageActionChannelEditTitle");break;case"messageActionChatDeletePhoto":l&&(e.action._="messageActionChannelDeletePhoto");break;case"messageActionChatAddUser":1==e.action.users.length?(e.action.user_id=e.action.users[0],e.fromID==e.action.user_id&&(e.action._=n?"messageActionChatJoined":"messageActionChatReturn")):e.action.users.length>1&&(e.action._="messageActionChatAddUsers");break;case"messageActionChatDeleteUser":e.fromID==e.action.user_id&&(e.action._="messageActionChatLeave");break;case"messageActionChannelMigrateFrom":t=-e.action.chat_id,s=-a;break;case"messageActionChatMigrateTo":t=-a,s=-e.action.channel_id;break;case"messageActionHistoryClear":e.clear_history=!0,e.pFlags.out=!1,e.pFlags.unread=!1;break;case"messageActionPhoneCall":delete e.fromID,e.action.type=(e.pFlags.out?"out_":"in_")+("phoneCallDiscardReasonMissed"==e.action.reason._||"phoneCallDiscardReasonBusy"==e.action.reason._?"missed":"ok")}t&&s&&!this.migratedFromTo[t]&&!this.migratedToFrom[s]&&this.migrateChecks(t,s)}if(e.rReply=this.getRichReplyText(e),e.message&&e.message.length){const t=f.RichTextProcessor.parseEntities(e.message),s=e.entities||[];e.totalEntities=f.RichTextProcessor.mergeEntities(t,s,!e.pending)}e.canBeEdited=this.canMessageBeEdited(e),t.isEdited||(this.messagesStorage[c]=e)})}getRichReplyText(e,t=e.message){let s="";if(e.media)if(e.grouped_id)s+="<i>Album"+(e.message?", ":"")+"</i>";else switch(e.media._){case"messageMediaPhoto":s+="<i>Photo"+(e.message?", ":"")+"</i>";break;case"messageMediaGeo":s+="<i>Geolocation</i>";break;case"messageMediaPoll":s+="<i>"+e.media.poll.rReply+"</i>";break;case"messageMediaContact":s+="<i>Contact</i>";break;case"messageMediaDocument":let t=e.media.document;s="video"==t.type?"<i>Video"+(e.message?", ":"")+"</i>":"voice"==t.type?"<i>Voice message</i>":"gif"==t.type?"<i>GIF"+(e.message?", ":"")+"</i>":"round"==t.type?"<i>Video message"+(e.message?", ":"")+"</i>":"sticker"==t.type?(t.stickerEmoji||"")+"<i>Sticker</i>":"<i>"+t.file_name+"</i>"}if(e.action){let t=e.action,i="";if(t.message)i=f.RichTextProcessor.wrapRichText(t.message,{noLinebreaks:!0});else{let e="",s=t._;if("messageActionPhoneCall"==s){s+="."+t.type;let i=t.duration;if(i){let t=[];t.push(i%60+" s"),i>=60&&t.push((i/60|0)+" min"),e=" ("+t.reverse().join(" ")+")"}}i=(a.langPack[s]||t._)+e}s=i?"<i>"+i+"</i>":""}let i="";if(t){let e=f.RichTextProcessor.parseEntities(t.replace(/\n/g," "),{noLinebreakers:!0});i=f.RichTextProcessor.wrapRichText(t,{noLinebreakers:!0,entities:e,noTextFormat:!0})}return s+i}editPeerFolders(e,t){w.default.invokeApi("folders.editPeerFolders",{folder_peers:e.map(e=>({_:"inputFolderPeer",peer:m.default.getInputPeerByID(e),folder_id:t}))}).then(e=>{this.log("editPeerFolders updates:",e),u.default.processUpdateMessage(e)})}toggleDialogPin(e,t){var s;if(t>1)return void this.filtersStorage.toggleDialogPin(e,t);const i=this.getDialogByPeerID(e)[0];if(!i)return Promise.reject();const n={_:"inputDialogPeer",peer:m.default.getInputPeerByID(e)},a=(null===(s=i.pFlags)||void 0===s?void 0:s.pinned)?0:1;return w.default.invokeApi("messages.toggleDialogPin",{flags:a,peer:n}).then(e=>{e&&this.handleUpdate({_:"updateDialogPinned",peer:n,pFlags:{pinned:a}})})}markDialogUnread(e,t){var s;let i=this.getDialogByPeerID(e)[0];if(!i)return Promise.reject();let n={_:"inputDialogPeer",peer:m.default.getInputPeerByID(e)},a=t||(null===(s=i.pFlags)||void 0===s?void 0:s.unread_mark)?0:1;return w.default.invokeApi("messages.markDialogUnread",{flags:a,peer:n}).then(e=>{e&&this.handleUpdate({_:"updateDialogUnreadMark",peer:n,pFlags:{unread:a}})})}migrateChecks(e,t){if(!this.migratedFromTo[e]&&!this.migratedToFrom[t]&&r.default.hasChat(-t)){const s=r.default.getChat(-e);s&&s.migrated_to&&s.migrated_to.channel_id==-t&&(this.migratedFromTo[e]=t,this.migratedToFrom[t]=e,setTimeout(()=>{const s=this.dialogsStorage.dropDialog(e);s.length&&a.$rootScope.$broadcast("dialog_drop",{peerID:e,dialog:s[0]}),a.$rootScope.$broadcast("dialog_migrate",{migrateFrom:e,migrateTo:t})},100))}}canMessageBeEdited(e){return!("message"!=e._||e.deleted||e.fwd_from||e.via_bot_id||e.media&&-1==["messageMediaPhoto","messageMediaDocument","messageMediaWebPage","messageMediaPending"].indexOf(e.media._)||e.fromID&&d.default.isBot(e.fromID))&&(!e.media||"messageMediaDocument"!=e.media._||!e.media.document.sticker)}canEditMessage(e){if(!this.messagesStorage[e])return!1;const t=this.messagesStorage[e];return!(!t||!t.canBeEdited)&&(this.getMessagePeer(t)==d.default.getSelf().id||!(t.date<a.tsNow(!0)-172800||!t.pFlags.out))}applyConversations(e){d.default.saveApiUsers(e.users),r.default.saveApiChats(e.chats),this.saveMessages(e.messages);const t={};let s=!1;e.dialogs.forEach(e=>{const i=m.default.getPeerID(e.peer);let n=e.top_message;const o=this.pendingTopMsgs[i];if(o&&(!n||this.getMessage(o).date>this.getMessage(n).date)&&(e.top_message=n=o),n){const n=this.getDialogByPeerID(i)[0];n&&n.pFlags&&n.pFlags.pinned&&(e.pFlags||(e.pFlags={}),e.pFlags.pinned=!0),this.saveConversation(e),n?a.$rootScope.$broadcast("dialog_top",e):(t[i]=e,s=!0)}else{const e=this.dialogsStorage.dropDialog(i);e.length&&a.$rootScope.$broadcast("dialog_drop",{peerID:i,dialog:e[0]})}if(void 0!==this.newUpdatesAfterReloadToHandle[i]){for(const e in this.newUpdatesAfterReloadToHandle[i]){const t=this.newUpdatesAfterReloadToHandle[i][e];this.handleUpdate(t)}delete this.newUpdatesAfterReloadToHandle[i]}}),s&&a.$rootScope.$broadcast("dialogs_multiupdate",t)}saveConversation(e){const t=m.default.getPeerID(e.peer);if(!t)return!1;const s=m.default.isChannel(t)?-t:0,i=m.default.getPeerSearchText(t);let n,f;if(M.default.indexObject(t,i,this.dialogsIndex),e.top_message?(n=o.default.getFullMessageID(e.top_message,s),f=this.getMessage(n)):(n=this.tempID--,f={_:"message",id:n,mid:n,from_id:d.default.getSelf().id,to_id:m.default.getOutputPeer(t),deleted:!0,flags:0,pFlags:{unread:!1,out:!0},date:0,message:""},this.saveMessages([f])),!s&&t<0){const e=r.default.getChat(-t);if(e&&e.migrated_to&&e.pFlags.deactivated){const s=m.default.getPeerID(e.migrated_to);return this.migratedFromTo[t]=s,void(this.migratedToFrom[s]=t)}}if(e.top_message=n,e.read_inbox_max_id=o.default.getFullMessageID(e.read_inbox_max_id,s),e.read_outbox_max_id=o.default.getFullMessageID(e.read_outbox_max_id,s),e.hasOwnProperty("folder_id")||(e.folder_id=0),e.peerID=t,this.dialogsStorage.generateIndexForDialog(e),this.dialogsStorage.pushDialog(e,f.date),f.mid>0&&(f.mid>e[f.pFlags.out?"read_outbox_max_id":"read_inbox_max_id"]?f.pFlags.unread=!0:f.pFlags.unread=!1),void 0===this.historiesStorage[t]){const s={count:null,history:[],pending:[]};s[n>0?"history":"pending"].push(n),n<0&&f.pFlags.unread&&e.unread_count++,this.historiesStorage[t]=s,this.mergeReplyKeyboard(s,f)&&a.$rootScope.$broadcast("history_reply_markup",{peerID:t})}s&&e.pts&&u.default.addChannelState(s,e.pts)}mergeReplyKeyboard(e,t){if(!t.reply_markup&&!t.pFlags.out&&!t.action)return!1;if(t.reply_markup&&"replyInlineMarkup"==t.reply_markup._)return!1;var s=t.reply_markup,i=e.reply_markup;if(s)return!(i&&i.mid>=t.mid)&&(!(s.pFlags.selective&&!(16&t.flags))&&(e.maxOutID&&t.mid<e.maxOutID&&s.pFlags.single_use&&(s.pFlags.hidden=!0),"replyKeyboardHide"!=(s=Object.assign({mid:t.mid},s))._&&(s.fromID=t.from_id),e.reply_markup=s,!0));if(t.pFlags.out)if(i){if(i.pFlags.single_use&&!i.pFlags.hidden&&(t.mid>i.mid||t.mid<0)&&t.message)return i.pFlags.hidden=!0,!0}else(!e.maxOutID||t.mid>e.maxOutID)&&(e.maxOutID=t.mid);return!(!t.action||"messageActionChatDeleteUser"!=t.action._||!(i?t.action.user_id==i.fromID:d.default.isBot(t.action.user_id)))&&(e.reply_markup={_:"replyKeyboardHide",mid:t.mid,flags:0,pFlags:{}},!0)}getSearch(e=0,t="",s={_:"inputMessagesFilterEmpty"},i,n,f=0,l=0){var c=[],u=!t,h={peer:e,filter:s},p=u&&a.deepEqual(this.lastSearchFilter,h);if(u&&!p&&(this.lastSearchFilter=h,this.lastSearchResults=[]),e&&!i&&!t){var b=this.historiesStorage[e];if(void 0!==b&&b.history.length){var v,y={},_=[],S=n||20;switch(s._){case"inputMessagesFilterPhotos":y.messageMediaPhoto=!0;break;case"inputMessagesFilterPhotoVideo":y.messageMediaPhoto=!0,y.messageMediaDocument=!0,_.push("video");break;case"inputMessagesFilterVideo":y.messageMediaDocument=!0,_.push("video");break;case"inputMessagesFilterDocument":y.messageMediaDocument=!0;break;case"inputMessagesFilterVoice":y.messageMediaDocument=!0,_.push("voice");break;case"inputMessagesFilterRoundVoice":y.messageMediaDocument=!0,_.push("round","voice");break;case"inputMessagesFilterRoundVideo":y.messageMediaDocument=!0,_.push("round");break;case"inputMessagesFilterMusic":y.messageMediaDocument=!0,_.push("audio");break;case"inputMessagesFilterUrl":y.url=!0;break;case"inputMessagesFilterMyMentions":y.mentioned=!0;break;default:return Promise.resolve({count:0,next_rate:0,history:[]})}for(let e=0;e<b.history.length;e++)if((v=this.messagesStorage[b.history[e]]).media&&y[v.media._]){if(_.length&&"messageMediaDocument"==v.media._&&!_.includes(v.media.document.type))continue;if(c.push(v.mid),c.length>=S)break}}if(c.length<S&&this.lastSearchResults.length&&p){var L=!!c.length&&c[c.length-1];for(let e=0;e<this.lastSearchResults.length&&!((!1===L||this.lastSearchResults[e]<L)&&(c.push(this.lastSearchResults[e]),c.length>=S));e++);}}if(c.length||1e3==n)return u&&(this.lastSearchResults=a.listMergeSorted(this.lastSearchResults,c)),Promise.resolve({count:0,next_rate:0,history:c});let M;if(e||!t)M=w.default.invokeApi("messages.search",{flags:0,peer:m.default.getInputPeerByID(e),q:t||"",filter:s||{_:"inputMessagesFilterEmpty"},min_date:0,max_date:0,limit:n,offset_id:o.default.getMessageLocalID(i)||0,add_offset:l?-l:0,max_id:0,min_id:0},{timeout:0,noErrorBox:!0});else{var D=0,E=0,I=i&&this.getMessage(i);I&&I.date&&(I.date+g.default.serverTimeOffset,E=I.id,D=this.getMessagePeer(I)),M=w.default.invokeApi("messages.searchGlobal",{q:t,offset_rate:f,offset_peer:m.default.getInputPeerByID(D),offset_id:o.default.getMessageLocalID(E),limit:n||20},{timeout:0,noErrorBox:!0})}return M.then(e=>{d.default.saveApiUsers(e.users),r.default.saveApiChats(e.chats),this.saveMessages(e.messages);var t=e.count||e.messages.length;return c=[],e.messages.forEach(e=>{var t=this.getMessagePeer(e);if(t<0){var s=r.default.getChat(-t);s.migrated_to&&this.migrateChecks(t,-s.migrated_to.channel_id)}c.push(e.mid)}),u&&(!i||p&&this.lastSearchResults.indexOf(i)>=0)&&(this.lastSearchResults=a.listMergeSorted(this.lastSearchResults,c)),{count:t,next_rate:e.next_rate,history:c}},e=>(400==e.code&&(e.handled=!0),Promise.reject(e)))}scheduleHandleNewDialogs(){this.newDialogsHandlePromise||(this.newDialogsHandlePromise=window.setTimeout(this.handleNewDialogs,0))}deleteMessages(e,t){const s=o.default.splitMessageIDsByChannels(e),i=[];for(const e in s.msgIDs){const n=+e;let a,o=s.msgIDs[n];if(n>0){const e=r.default.getChat(n);if(!(e.pFlags.creator||e.pFlags.editor&&e.pFlags.megagroup)){const t=[];if((e.pFlags.editor||e.pFlags.megagroup)&&o.forEach((e,i)=>{this.getMessage(s.mids[n][i]).pFlags.out&&t.push(e)}),!t.length)return;o=t}a=w.default.invokeApi("channels.deleteMessages",{channel:r.default.getChannelInput(n),id:o}).then(e=>{u.default.processUpdateMessage({_:"updateShort",update:{_:"updateDeleteChannelMessages",channel_id:n,messages:o,pts:e.pts,pts_count:e.pts_count}})})}else{let e=0;t&&(e|=1),a=w.default.invokeApi("messages.deleteMessages",{flags:e,id:o}).then(e=>{u.default.processUpdateMessage({_:"updateShort",update:{_:"updateDeleteMessages",messages:o,pts:e.pts,pts_count:e.pts_count}})})}i.push(a)}return Promise.all(i)}readHistory(e,t=0,s=0){const i=m.default.isChannel(e),n=this.historiesStorage[e],o=this.getDialogByPeerID(e)[0];if(!o||!o.unread_count){if(!n||!n.history.length)return Promise.resolve(!1);if(!!!n.history.find(e=>{const t=this.messagesStorage[e];return t&&!t.pFlags.out&&t.pFlags.unread}))return Promise.resolve(!1)}if(n.readPromise)return n.readPromise;let d;return d=i?w.default.invokeApi("channels.readHistory",{channel:r.default.getChannelInput(-e),max_id:t}):w.default.invokeApi("messages.readHistory",{peer:m.default.getInputPeerByID(e),max_id:t}).then(e=>{u.default.processUpdateMessage({_:"updateShort",update:{_:"updatePts",pts:e.pts,pts_count:e.pts_count}})}),n.readPromise=d.then(()=>{let i=-1;0!=t&&n.history.length&&(i=n.history.indexOf(t));let r=1;if(n.history.length&&t)for(let e=-1==i?0:i,s=n.history.length;e<s;e++){const s=n.history[e];if(s>t)continue;const i=this.messagesStorage[s];i&&!i.pFlags.out&&(i.pFlags.unread=!1,r++)}return!!o&&(n.history.length&&(o.read_inbox_max_id=t),o.read_inbox_max_id==o.top_message||o.read_inbox_max_id==o.read_outbox_max_id?o.unread_count=0:o.unread_count=Math.max(o.unread_count-(s||r),0),this.log("readHistory set unread_count to:",o.unread_count,o),a.$rootScope.$broadcast("dialog_unread",{peerID:e,count:o.unread_count}),a.$rootScope.$broadcast("messages_read"),!0)}).finally(()=>{delete n.readPromise}),n.readPromise}readMessages(e){var t=o.default.splitMessageIDsByChannels(e);Object.keys(t.msgIDs).forEach(e=>{e=+e;let s=t.msgIDs[e];e>0?w.default.invokeApi("channels.readMessageContents",{channel:r.default.getChannelInput(e),id:s}).then(()=>{u.default.processUpdateMessage({_:"updateShort",update:{_:"updateChannelReadMessagesContents",channel_id:e,messages:s}})}):w.default.invokeApi("messages.readMessageContents",{id:s}).then(e=>{u.default.processUpdateMessage({_:"updateShort",update:{_:"updateReadMessagesContents",messages:s,pts:e.pts,pts_count:e.pts_count}})})})}handleUpdate(e){var t,s;switch(this.log("AMM: handleUpdate:",e._),e._){case"updateMessageID":var i=e.random_id,n=this.pendingByRandomID[i];if(n){var f=n[0],l=n[1],c=m.default.isChannel(f)?-f:0,u=o.default.getFullMessageID(e.id,c);if(p=this.messagesStorage[u]){var h=(g=this.historiesStorage[f]).pending.indexOf(l);-1!=h&&g.pending.splice(h,1),delete this.messagesStorage[l],this.finalizePendingMessageCallbacks(l,u)}else this.pendingByMessageID[u]=i}break;case"updateNewMessage":case"updateNewChannelMessage":var p=e.message,g=(f=this.getMessagePeer(p),this.historiesStorage[f]);if(!(C=this.getDialogByPeerID(f)).length){this.newDialogsToHandle[f]={reload:!0},this.scheduleHandleNewDialogs(),void 0===this.newUpdatesAfterReloadToHandle[f]&&(this.newUpdatesAfterReloadToHandle[f]=[]),this.newUpdatesAfterReloadToHandle[f].push(e);break}if("updateNewChannelMessage"==e._){var b=r.default.getChat(-f);if(b.pFlags&&(b.pFlags.left||b.pFlags.kicked))break}if(this.saveMessages([p],{isNew:!0}),void 0===g&&(g=this.historiesStorage[f]={count:null,history:[],pending:[]}),-1!=(F=p.mid>0?g.history:g.pending).indexOf(p.mid))return!1;var v,_=F[0];F.unshift(p.mid),p.mid>0&&p.mid<_&&F.sort((e,t)=>t-e),p.mid>0&&null!==g.count&&g.count++,this.mergeReplyKeyboard(g,p)&&a.$rootScope.$broadcast("history_reply_markup",{peerID:f}),!p.pFlags.out&&p.from_id&&d.default.forceUserOnline(p.from_id),(i=this.pendingByMessageID[p.mid])&&((v=this.finalizePendingMessage(i,p))&&a.$rootScope.$broadcast("history_update",{peerID:f,mid:p.mid}),delete this.pendingByMessageID[p.mid]),v||(void 0===this.newMessagesToHandle[f]&&(this.newMessagesToHandle[f]=[]),this.newMessagesToHandle[f].push(p.mid),this.newMessagesHandlePromise||(this.newMessagesHandlePromise=window.setTimeout(this.handleNewMessages,0)));var S=!p.pFlags.out&&p.pFlags.unread;(L=C[0]).top_message=p.mid,S&&L.unread_count++,L.pFlags.pinned&&L.index||(L.index=this.dialogsStorage.generateDialogIndex(p.date)),this.newDialogsToHandle[f]=L,this.scheduleHandleNewDialogs();break;case"updateDialogUnreadMark":{this.log("updateDialogUnreadMark",e);let t=m.default.getPeerID(e.peer.peer),s=this.getDialogByPeerID(t);if(s.length){let t=s[0];e.pFlags.unread?t.pFlags.unread_mark=!0:delete t.pFlags.unread_mark,a.$rootScope.$broadcast("dialogs_multiupdate",{peerID:t})}else this.newDialogsToHandle[t]={reload:!0},this.scheduleHandleNewDialogs();break}case"updateFolderPeers":{this.log("updateFolderPeers",e);const t=e.folder_peers;this.scheduleHandleNewDialogs(),t.forEach(e=>{var t;const{folder_id:s,peer:i}=e,n=m.default.getPeerID(i),a=this.dialogsStorage.dropDialog(n);if(a.length){const e=a[0];this.newDialogsToHandle[n]=e,(null===(t=e.pFlags)||void 0===t?void 0:t.pinned)&&(delete e.pFlags.pinned,this.dialogsStorage.pinnedOrders[s].findAndSplice(t=>t==e.peerID)),e.folder_id=s,this.dialogsStorage.generateIndexForDialog(e),this.dialogsStorage.pushDialog(e)}else this.newDialogsToHandle[n]={reload:!0}});break}case"updateDialogPinned":{const s=null!==(t=e.folder_id)&&void 0!==t?t:0;this.log("updateDialogPinned",e);const i=m.default.getPeerID(e.peer.peer),n=this.getDialogByPeerID(i);if(this.scheduleHandleNewDialogs(),n.length){const t=n[0];this.newDialogsToHandle[i]=t,e.pFlags.pinned?t.pFlags.pinned=!0:(delete t.pFlags.pinned,this.dialogsStorage.pinnedOrders[s].findAndSplice(e=>e==t.peerID)),this.dialogsStorage.generateIndexForDialog(t)}else this.newDialogsToHandle[i]={reload:!0};break}case"updatePinnedDialogs":{const t=null!==(s=e.folder_id)&&void 0!==s?s:0;this.log("updatePinnedDialogs",e);const i={};if(!e.order){w.default.invokeApi("messages.getPinnedDialogs",{folder_id:t}).then(e=>{e.dialogs.reverse(),this.applyConversations(e),e.dialogs.forEach(e=>{i[e.peerID]=!0}),this.dialogsStorage.getFolder(t).forEach(e=>{const t=e.peerID;e.pFlags.pinned&&!i[t]&&(this.newDialogsToHandle[t]={reload:!0},this.scheduleHandleNewDialogs())})});break}this.dialogsStorage.pinnedOrders[t].length=0;let n=!1;e.order.reverse(),e.order.forEach(e=>{const t=m.default.getPeerID(e.peer);i[t]=!0;const s=this.getDialogByPeerID(t);if(!s.length)return this.newDialogsToHandle[t]={reload:!0},void(n=!0);const a=s[0];a.pFlags.pinned=!0,this.dialogsStorage.generateIndexForDialog(a),this.newDialogsToHandle[t]=a,n=!0}),this.dialogsStorage.getFolder(t).forEach(e=>{const t=e.peerID;e.pFlags.pinned&&!i[t]&&(this.newDialogsToHandle[t]={reload:!0},n=!0)}),n&&this.scheduleHandleNewDialogs();break}case"updateEditMessage":case"updateEditChannelMessage":p=e.message,f=this.getMessagePeer(p),c="peerChannel"==p.to_id._?-f:0,u=o.default.getFullMessageID(p.id,c);if(void 0===this.messagesStorage[u])break;this.saveMessages([p],{isEdited:!0}),a.safeReplaceObject(this.messagesStorage[u],p);var L,M=(L=this.getDialogByPeerID(f)[0])&&L.top_message==u;if(p.clear_history)M&&a.$rootScope.$broadcast("dialog_flush",{peerID:f});else if(a.$rootScope.$broadcast("message_edit",{peerID:f,id:p.id,mid:u,justMedia:!1}),M){var D={};D[f]=L,a.$rootScope.$broadcast("dialogs_multiupdate",D)}break;case"updateReadHistoryInbox":case"updateReadHistoryOutbox":case"updateReadChannelInbox":case"updateReadChannelOutbox":var E="updateReadHistoryOutbox"==e._||"updateReadChannelOutbox"==e._,I=(c=e.channel_id,o.default.getFullMessageID(e.max_id,c)),C=(f=c?-c:m.default.getPeerID(e.peer),this.getDialogByPeerID(f)),P=0,k=(F=(this.historiesStorage[f]||{}).history||[]).length,T=!1;for(f>0&&E&&d.default.forceUserOnline(f),X=0;X<k;X++)if(!((R=F[X])>I)&&(p=this.messagesStorage[R])&&p.pFlags.out==E){if(!p.pFlags.unread)break;p&&p.pFlags.unread&&(p.pFlags.unread=!1,T||(T=!0),p.pFlags.out||C[0]&&(P=--C[0].unread_count))}C[0]&&(!E&&P&&C[0].top_message<=I&&(P=C[0].unread_count=0),C[0][E?"read_outbox_max_id":"read_inbox_max_id"]=I),a.$rootScope.$broadcast("dialog_unread",{peerID:f,count:P}),T&&a.$rootScope.$broadcast("messages_read");break;case"updateChannelReadMessagesContents":c=e.channel_id;var A=[];e.messages.forEach(e=>{A.push(o.default.getFullMessageID(e,c))}),e.messages=A;case"updateReadMessagesContents":var X,x=(B=e.messages).length;for(X=0;X<x;X++)R=B[X],(p=this.messagesStorage[R])&&delete p.pFlags.media_unread;break;case"updateChannelAvailableMessages":c=e.channel_id;var F,B=[];f=-c;(F=(this.historiesStorage[f]||{}).history||[]).length&&F.forEach(t=>{(!e.available_min_id||o.default.getMessageLocalID(t)<=e.available_min_id)&&B.push(t)}),e.messages=B;case"updateDeleteMessages":case"updateDeleteChannelMessages":{let t={},s=e.channel_id;for(let i=0;i<e.messages.length;i++){let n=o.default.getFullMessageID(e.messages[i],s),a=this.messagesStorage[n];if(a){let e=this.getMessagePeer(a),s=t[e]||(t[e]={count:0,unread:0,msgs:{}});!a.pFlags.out&&a.pFlags.unread&&s.unread++,s.count++,s.msgs[n]=!0,a.deleted=!0,this.messagesStorage[n]={deleted:!0,id:n,from_id:a.from_id,to_id:a.to_id,flags:a.flags,pFlags:a.pFlags,date:a.date};let i=this.newMessagesToHandle[e];if(i&&i.length){let e=i.indexOf(n);-1!=e&&i.splice(e)}}}Object.keys(t).forEach(e=>{let s=t[+e],i=this.historiesStorage[e];if(void 0!==i){let t=[],n=[];for(let e=0;e<i.history.length;e++)s.msgs[i.history[e]]||t.push(i.history[e]);i.history=t,s.count&&null!==i.count&&i.count>0&&(i.count-=s.count,i.count<0&&(i.count=0));for(let e=0;e<i.pending.length;e++)s.msgs[i.pending[e]]||n.push(i.pending[e]);i.pending=n,a.$rootScope.$broadcast("history_delete",{peerID:e,msgs:s.msgs})}let n=this.getDialogByPeerID(+e)[0];n&&(s.unread&&(n.unread_count-=s.unread,a.$rootScope.$broadcast("dialog_unread",{peerID:e,count:n.unread_count})),s.msgs[n.top_message]&&this.reloadConversation(+e))});break}case"updateChannel":{const t=e.channel_id,s=-t,i=r.default.getChat(t),n="channel"==i._&&!i.pFlags.left&&!i.pFlags.kicked,o=this.getDialogByPeerID(s),d=o.length>0;!("channel"!=i._||!i.username&&(i.pFlags.left||i.pFlags.kicked))!=(void 0!==this.historiesStorage[s])&&(delete this.historiesStorage[s],a.$rootScope.$broadcast("history_forbidden",s)),d!=n&&(n?this.reloadConversation(-t):o[0]&&(this.dialogsStorage.dropDialog(s),a.$rootScope.$broadcast("dialog_drop",{peerID:s,dialog:o[0]})));break}case"updateChannelReload":{const t=e.channel_id,s=-t;this.dialogsStorage.dropDialog(s),delete this.historiesStorage[s],this.reloadConversation(-t).then(()=>{a.$rootScope.$broadcast("history_reload",s)});break}case"updateChannelMessageViews":{let t=e.views,s=o.default.getFullMessageID(e.id,e.channel_id),i=this.getMessage(s);i&&i.views&&i.views<t&&(i.views=t,a.$rootScope.$broadcast("message_views",{mid:s,views:t}));break}case"updateServiceNotification":this.log("updateServiceNotification",e);var R;f=777e3,p={_:"message",id:R=this.tempID--,from_id:777e3,to_id:m.default.getOutputPeer(f),flags:0,pFlags:{unread:!0},date:(e.inbox_date||a.tsNow(!0))+y.default.serverTimeOffset,message:e.message,media:e.media,entities:e.entities};d.default.hasUser(777e3)||d.default.saveApiUsers([{_:"user",id:777e3,pFlags:{verified:!0},access_hash:0,first_name:"Telegram",phone:"42777"}]),this.saveMessages([p]),e.inbox_date&&(this.pendingTopMsgs[f]=R,this.handleUpdate({_:"updateNewMessage",message:p}));break;case"updateChatPinnedMessage":case"updateUserPinnedMessage":{let{id:t}=e,s=e.user_id||-e.chat_id||-e.channel_id;this.savePinnedMessage(s,t);break}}}finalizePendingMessage(e,t){var s=this.pendingByRandomID[e];if(s){var i,n=s[0],o=s[1],r=this.historiesStorage[n],d=r.pending.indexOf(o);return-1!=d&&r.pending.splice(d,1),(i=this.messagesStorage[o])&&(delete i.pending,delete i.error,delete i.random_id,delete i.send,a.$rootScope.$broadcast("messages_pending")),delete this.messagesStorage[o],this.finalizePendingMessageCallbacks(o,t.mid),i}return!1}finalizePendingMessageCallbacks(e,t){var s=this.tempFinalizeCallbacks[e];this.log.warn(a.dT(),s,e),void 0!==s&&(s.forEach(e=>{e(t)}),delete this.tempFinalizeCallbacks[e]),a.$rootScope.$broadcast("message_sent",{tempID:e,mid:t})}incrementMaxSeenID(e){if(!e||this.maxSeenID&&!(e>this.maxSeenID))return!1;p.default.set({max_seen_msg:e}),w.default.invokeApi("messages.receivedMessages",{max_id:e})}getHistory(e,t=0,s,i){var n;this.migratedFromTo[e]&&(e=this.migratedFromTo[e]);const a=null!==(n=this.historiesStorage[e])&&void 0!==n?n:this.historiesStorage[e]={count:null,history:[],pending:[]};let r=0,d=!1,f=!1,l=e;if(this.migratedToFrom[e]&&(f=!0,t&&t<o.default.fullMsgIDModulus&&(l=this.migratedToFrom[e])),t>0)for(d=!0;r<a.history.length;r++)if(t>a.history[r]){d=!1;break}if(!d&&(null!==a.count&&a.history.length==a.count||a.history.length>=r+s)){i?(i=Math.min(r,i),r=Math.max(0,r-i),s+=i):s=s;let e=a.history.slice(r,r+s);return!t&&a.pending.length&&(e=a.pending.slice().concat(e)),this.wrapHistoryResult({count:a.count,history:e,unreadOffset:0,unreadSkip:!1})}return d&&(r=0),(i||t)&&-1==a.history.indexOf(t)?(i&&(r=-i,s+=i),this.requestHistory(l,t,s,r).then(e=>{a.count=e.count||e.messages.length,f&&a.count++;let s=[];return e.messages.forEach(e=>{s.push(e.mid)}),!t&&a.pending.length&&(s=a.pending.slice().concat(s)),this.wrapHistoryResult({count:a.count,history:s,unreadOffset:0,unreadSkip:!1})})):this.fillHistoryStorage(e,t,s,a).then(()=>{if(r=0,t>0)for(r=0;r<a.history.length&&!(t>a.history[r]);r++);let e=a.history.slice(i?Math.max(r-i,0):r,r+s);return!t&&a.pending.length&&(e=a.pending.slice().concat(e)),this.wrapHistoryResult({count:a.count,history:e,unreadOffset:0,unreadSkip:!1})})}fillHistoryStorage(e,t,s,i){const n=this.migratedFromTo[e]&&!t?1:0;return this.requestHistory(e,t,s,n).then(n=>{i.count=n.count||n.messages.length,!t&&n.messages.length&&(t=n.messages[0].mid+1);let o=0;if(t>0)for(;o<i.history.length&&!(t>i.history[o]);o++);const r=i.history.length;i.history.splice(o,i.history.length-o),n.messages.forEach(t=>{this.mergeReplyKeyboard(i,t)&&a.$rootScope.$broadcast("history_reply_markup",{peerID:e}),i.history.push(t.mid)});const d=i.history.length;s-=d-r;const f=this.migratedFromTo[e],l=this.migratedToFrom[e],c=void 0!==f||void 0!==l;if(c&&(i.count=Math.max(i.count,d)+1),s>0){if(t=i.history[d-1],c){if(!n.messages.length){if(!l)return i.count=d,!0;t=0,e=l}return this.fillHistoryStorage(e,t,s,i)}if(d<i.count)return this.fillHistoryStorage(e,t,s,i)}return!0})}wrapHistoryResult(e){if(e.unreadOffset)for(let t=e.history.length-1;t>=0;t--){const s=this.messagesStorage[e.history[t]];if(s&&!s.pFlags.out&&s.pFlags.unread){e.unreadOffset=t+1;break}}return e}requestHistory(e,t,s=0,i=0,n=0){const f=m.default.isChannel(e);return a.$rootScope.$broadcast("history_request"),w.default.invokeApi("messages.getHistory",{peer:m.default.getInputPeerByID(e),offset_id:t?o.default.getMessageLocalID(t):0,offset_date:n,add_offset:i,limit:s,max_id:0,min_id:0,hash:0},{timeout:0,noErrorBox:!0}).then(n=>{this.log("requestHistory result:",n,t,s,i),d.default.saveApiUsers(n.users),r.default.saveApiChats(n.chats),this.saveMessages(n.messages),f&&u.default.addChannelState(-e,n.pts);let a=n.messages.length;a&&n.messages[a-1].deleted&&(n.messages.splice(a-1,1),a--,n.count--);const o=this.historiesStorage[e];return a&&n.messages[a-1].grouped_id&&o.history.length+n.messages.length<n.count?this.requestHistory(e,n.messages[a-1].mid,10,0).then(e=>n):n},t=>{switch(t.type){case"CHANNEL_PRIVATE":let t=r.default.getChat(-e);t={_:"channelForbidden",access_hash:t.access_hash,title:t.title},u.default.processUpdateMessage({_:"updates",updates:[{_:"updateChannel",channel_id:-e}],chats:[t],users:[]})}throw t})}fetchSingleMessages(){if(this.fetchSingleMessagesPromise)return this.fetchSingleMessagesPromise;const e=this.needSingleMessages.slice();this.needSingleMessages.length=0;const t=o.default.splitMessageIDsByChannels(e);let s=[];Object.keys(t.msgIDs).forEach(e=>{e=+e;let i=t.msgIDs[e].map(e=>({_:"inputMessageID",id:e}));var n;n=e>0?w.default.invokeApi("channels.getMessages",{channel:r.default.getChannelInput(e),id:i}):w.default.invokeApi("messages.getMessages",{id:i}),s.push(n.then(s=>{d.default.saveApiUsers(s.users),r.default.saveApiChats(s.chats),this.saveMessages(s.messages),a.$rootScope.$broadcast("messages_downloaded",t.mids[+e])}))}),this.fetchSingleMessagesPromise=Promise.all(s).finally(()=>{this.fetchSingleMessagesTimeout=0,this.fetchSingleMessagesPromise=null,this.needSingleMessages.length&&this.fetchSingleMessages()})}wrapSingleMessage(e,t=!1){this.messagesStorage[e]&&!t?a.$rootScope.$broadcast("messages_downloaded",[e]):-1==this.needSingleMessages.indexOf(e)&&(this.needSingleMessages.push(e),0==this.fetchSingleMessagesTimeout&&(this.fetchSingleMessagesTimeout=window.setTimeout(this.fetchSingleMessages.bind(this),10)))}setTyping(e){if(!a.$rootScope.myID)return Promise.resolve(!1);"string"==typeof e&&(e={_:e});let t=m.default.getInputPeerByID(a.$rootScope.myID);return w.default.invokeApi("messages.setTyping",{peer:t,action:e})}}t.AppMessagesManager=P;const k=new P;t.default=k},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(5)),a=i(s(9)),o=s(0),r=s(3),d=["#c03d33","#4fad2d","#d09306","#168acd","#8544d6","#cd4073","#2996ad","#ce671b"],f=["#e17076","#7bc862","#e5ca77","#65AADD","#a695e7","#ee7aae","#6ec9cb","#faa774"],l=[0,7,4,1,6,3,5],c={getPeerPhoto:e=>e>0?n.default.getUserPhoto(e):a.default.getChatPhoto(-e),getPeerMigratedTo:e=>{if(e>=0)return!1;let t=a.default.getChat(-e);return!!(t&&t.migrated_to&&t.pFlags.deactivated)&&c.getPeerID(t.migrated_to)},getPeerTitle:(e,t=!1,s=!1)=>{let i={};i=o.isObject(e)?e:c.getPeer(e);let n="";return e>0?(i.first_name&&(n+=i.first_name),i.last_name&&(n+=" "+i.last_name),n=n?n.trim():i.pFlags.deleted?"Deleted account":i.username):n=i.title,s&&(n=n.split(" ")[0]),t?n:r.RichTextProcessor.wrapEmojiText(n)},getOutputPeer:e=>{if(e>0)return{_:"peerUser",user_id:e};let t=-e;return a.default.isChannel(t)?{_:"peerChannel",channel_id:t}:{_:"peerChat",chat_id:t}},getPeerString:e=>e>0?n.default.getUserString(e):a.default.getChatString(-e),getPeerUsername:e=>e>0?n.default.getUser(e).username||"":a.default.getChat(-e).username||"",getPeer:e=>e>0?n.default.getUser(e):a.default.getChat(-e),getPeerID:e=>{if("number"==typeof e)return e;if(o.isObject(e))return e.user_id?e.user_id:-(e.channel_id||e.chat_id);if(!e)return 0;const t="u"==e.charAt(0),s=e.substr(1).split("_");return t?s[0]:-s[0]||0},isChannel:e=>e<0&&a.default.isChannel(-e),isMegagroup:e=>e<0&&a.default.isMegagroup(-e),isAnyGroup:e=>e<0&&!a.default.isBroadcast(-e),isBroadcast:e=>c.isChannel(e)&&!c.isMegagroup(e),isBot:e=>e>0&&n.default.isBot(e),getInputPeer:e=>{var t=e.charAt(0),s=e.substr(1).split("_");let i=+s[0];return"u"==t?(n.default.saveUserAccess(i,s[1]),{_:"inputPeerUser",user_id:i,access_hash:s[1]}):"c"==t||"s"==t?(a.default.saveChannelAccess(i,s[1]),"s"==t&&a.default.saveIsMegagroup(i),{_:"inputPeerChannel",channel_id:i,access_hash:s[1]||0}):{_:"inputPeerChat",chat_id:i}},getInputPeerByID:e=>{if(!e)return{_:"inputPeerEmpty"};if(e<0){let t=-e;return a.default.isChannel(t)?a.default.getChannelInputPeer(t):a.default.getChatInputPeer(t)}return{_:"inputPeerUser",user_id:e,access_hash:n.default.getUser(e).access_hash||0}},getPeerColorByID:(e,t=!0)=>(t?f:d)[l[(e<0?-e:e)%7]],getPeerSearchText:e=>{let t;if(e>0)t="%pu "+n.default.getUserSearchText(e);else if(e<0){t="%pg "+(a.default.getChat(-e).title||"")}return t}};t.default=c},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppChatsManager=void 0;const a=s(0),o=s(3),r=n(s(5)),d=n(s(2)),f=n(s(32)),l=n(s(27)),c=n(s(38));class u{constructor(){this.chats={},this.usernames={},this.channelAccess={},this.megagroups={},this.cachedPhotoLocations={},this.megagroupOnlines={},this.onChatUpdated=(e,t)=>{f.default.processUpdateMessage(t),t&&t.updates&&t.updates.length&&this.isChannel(e)&&l.default.invalidateChannelParticipants(e)},a.$rootScope.$on("apiUpdate",e=>{const t=e.detail;switch(t._){case"updateChannel":const e=t.channel_id;a.$rootScope.$broadcast("channel_settings",{channelID:e})}})}saveApiChats(e){e.forEach(e=>this.saveApiChat(e))}saveApiChat(e){if(!a.isObject(e))return;e.rTitle=e.title||"chat_title_deleted",e.rTitle=o.RichTextProcessor.wrapRichText(e.title,{noLinks:!0,noLinebreaks:!0})||"chat_title_deleted";let t=this.chats[e.id],s=c.default.cleanSearchText(e.title||"",!1).split(" "),i=s.shift(),n=s.pop();if(e.initials=i.charAt(0)+(n?n.charAt(0):""),void 0===e.pFlags&&(e.pFlags={}),e.pFlags.min&&void 0!==t)return;if("channel"==e._&&void 0===e.participants_count&&void 0!==t&&t.participants_count&&(e.participants_count=t.participants_count),e.username){let t=c.default.cleanUsername(e.username);this.usernames[t]=e.id}let r=!1;if(void 0===t)t=this.chats[e.id]=e;else{let s=t.photo&&t.photo.photo_small,i=e.photo&&e.photo.photo_small;JSON.stringify(s)!==JSON.stringify(i)&&(r=!0),a.safeReplaceObject(t,e),a.$rootScope.$broadcast("chat_update",e.id)}void 0!==this.cachedPhotoLocations[e.id]&&a.safeReplaceObject(this.cachedPhotoLocations[e.id],e&&e.photo?e.photo:{empty:!0}),r&&a.$rootScope.$broadcast("avatar_update",-e.id)}getChat(e){return e<0&&(e=-e),this.chats[e]||{_:"chatEmpty",id:e,deleted:!0,access_hash:this.channelAccess[e]}}hasRights(e,t){var s,i;const n=this.getChat(e);if("chatEmpty"==n._)return!1;if("chatForbidden"==n._||"channelForbidden"==n._||n.pFlags.kicked||n.pFlags.left)return!1;if(n.pFlags.creator)return!0;let a=null!==(i=null===(s=n.admin_rights||n.banned_rights||n.default_banned_rights)||void 0===s?void 0:s.pFlags)&&void 0!==i?i:{};switch(t){case"send":if("channel"==n._&&!n.pFlags.megagroup&&!a.post_messages)return!1;break;case"deleteRevoke":if("channel"==n._)return!!a.delete_messages;if(!n.pFlags.admin)return!1;break;case"pin":if("channel"==n._)return n.admin_rights?!!a.pin_messages||!!a.post_messages:!a.pin_messages;if(a.pin_messages&&!n.pFlags.admin)return!1;break;case"edit_title":case"edit_photo":case"invite":if("channel"==n._){if(!n.pFlags.megagroup)return!1;if("invite"!=t||!n.pFlags.democracy)return!1}else if(n.pFlags.admins_enabled&&!n.pFlags.admin)return!1}return!0}resolveUsername(e){return this.usernames[e]||0}saveChannelAccess(e,t){this.channelAccess[e]=t}saveIsMegagroup(e){this.megagroups[e]=!0}isChannel(e){e<0&&(e=-e);let t=this.chats[e];return!((!t||"channel"!=t._&&"channelForbidden"!=t._)&&!this.channelAccess[e])}isMegagroup(e){if(this.megagroups[e])return!0;let t=this.chats[e];return!(!t||"channel"!=t._||!t.pFlags.megagroup)}isBroadcast(e){return this.isChannel(e)&&!this.isMegagroup(e)}getChannelInput(e){return e?(e<0&&(e=-e),{_:"inputChannel",channel_id:e,access_hash:this.getChat(e).access_hash||this.channelAccess[e]||0}):{_:"inputChannelEmpty"}}getChatInputPeer(e){return{_:"inputPeerChat",chat_id:e}}getChannelInputPeer(e){return e?{_:"inputPeerChannel",channel_id:e,access_hash:this.getChat(e).access_hash||this.channelAccess[e]||0}:{_:"inputPeerEmpty"}}hasChat(e,t){let s=this.chats[e];return a.isObject(s)&&(t||!s.pFlags.min)}getChatPhoto(e){let t=this.getChat(e);return void 0===this.cachedPhotoLocations[e]&&(this.cachedPhotoLocations[e]=t&&t.photo?t.photo:{empty:!0}),this.cachedPhotoLocations[e]}getChatString(e){let t=this.getChat(e);return this.isChannel(e)?(this.isMegagroup(e)?"s":"c")+e+"_"+t.access_hash:"g"+e}getChatMembersString(e){var t;const s=this.getChat(e),i=this.isBroadcast(e),n=s.participants_count||(null===(t=s.participants)||void 0===t?void 0:t.participants.length)||0;return a.numberWithCommas(n)+" "+(i?"followers":"members")}wrapForFull(e,t){let s=a.copy(t),i=this.getChat(e);return s.participants_count||(s.participants_count=i.participants_count),s.participants&&"chatParticipants"==s.participants._&&(s.participants.participants=this.wrapParticipants(e,s.participants.participants)),s.about&&(s.rAbout=o.RichTextProcessor.wrapRichText(s.about,{noLinebreaks:!0})),s.peerString=this.getChatString(e),s.chat=i,s}wrapParticipants(e,t){let s=this.getChat(e),i=r.default.getSelf().id;if(this.isChannel(e)){let e=s.pFlags.creator;t.forEach(t=>{t.canLeave=i==t.user_id,t.canKick=e&&"channelParticipant"==t._,t.user=r.default.getUser(t.user_id)})}else{let e=s.pFlags.creator||s.pFlags.admins_enabled&&s.pFlags.admin;t.forEach(t=>{t.canLeave=i==t.user_id,t.canKick=!t.canLeave&&(s.pFlags.creator||"chatParticipant"==t._&&(e||i==t.inviter_id)),t.user=r.default.getUser(t.user_id)})}return t}createChannel(e,t){return d.default.invokeApi("channels.createChannel",{flags:1,broadcast:!0,title:e,about:t}).then(e=>(f.default.processUpdateMessage(e),e.chats[0].id))}inviteToChannel(e,t){let s=this.getChannelInput(e),i=t.map(e=>r.default.getUserInput(e));return d.default.invokeApi("channels.inviteToChannel",{channel:s,users:i}).then(e=>{f.default.processUpdateMessage(e)})}createChat(e,t){return d.default.invokeApi("messages.createChat",{users:t.map(e=>r.default.getUserInput(e)),title:e}).then(e=>(f.default.processUpdateMessage(e),e.chats[0].id))}editPhoto(e,t){let s={_:"inputChatUploadedPhoto",file:t};return this.isChannel(e)?d.default.invokeApi("channels.editPhoto",{channel:this.getChannelInputPeer(e),photo:s}).then(e=>{f.default.processUpdateMessage(e)}):d.default.invokeApi("messages.editChatPhoto",{chat_id:e,photo:s}).then(e=>{f.default.processUpdateMessage(e)})}getOnlines(e){var t,s;return i(this,void 0,void 0,(function*(){if(this.isMegagroup(e)){let i=Date.now()/1e3|0,n=null!==(t=this.megagroupOnlines[e])&&void 0!==t?t:this.megagroupOnlines[e]={timestamp:0,onlines:1};if(i-n.timestamp<60)return n.onlines;let a=yield d.default.invokeApi("messages.getOnlines",{peer:this.getChannelInputPeer(e)}),o=null!==(s=a.onlines)&&void 0!==s?s:1;return n.timestamp=i,n.onlines=o,o}if(this.isBroadcast(e))return 1;let i=l.default.getChatFull(e);if("chatFull"==i._&&i.participants&&i.participants.participants){return i.participants.participants.reduce((e,t)=>{let s=r.default.getUser(t.user_id);return s&&s.status&&"userStatusOnline"==s.status._?e+1:e},0)}return 1}))}leaveChannel(e){return d.default.invokeApi("channels.leaveChannel",{channel:this.getChannelInput(e)}).then(this.onChatUpdated.bind(this,e))}joinChannel(e){return d.default.invokeApi("channels.joinChannel",{channel:this.getChannelInput(e)}).then(this.onChatUpdated.bind(this,e))}}t.AppChatsManager=u,t.default=new u},function(e,t,s){"use strict";var i;Object.defineProperty(t,"__esModule",{value:!0}),t.logger=t.LogLevels=void 0,function(e){e[e.log=1]="log",e[e.warn=2]="warn",e[e.error=4]="error",e[e.debug=8]="debug"}(i=t.LogLevels||(t.LogLevels={}));var n=Date.now();function a(){return"["+((Date.now()-n)/1e3).toFixed(3)+"]"}t.logger=function(e,t=i.log|i.warn|i.error){function s(...s){return t&i.log&&console.log(a(),"["+e+"]:",...s)}return t=i.error,s.warn=function(...s){return t&i.warn&&console.warn(a(),"["+e+"]:",...s)},s.info=function(...s){return t&i.log&&console.info(a(),"["+e+"]:",...s)},s.error=function(...s){return t&i.error&&console.error(a(),"["+e+"]:",...s)},s.trace=function(...s){return t&i.log&&console.trace(a(),"["+e+"]:",...s)},s.debug=function(...s){return t&i.debug&&console.debug(a(),"["+e+"]:",...s)},s}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=s(3),o=s(0),r=n(s(54)),d=s(21),f=n(s(28)),l=n(s(13)),c=s(1);const u=new class{constructor(){this.docs={}}saveDoc(e,t){if(this.docs[e.id]){const t=this.docs[e.id];return e.thumbs&&(t.thumbs||(t.thumbs=e.thumbs)),t.file_reference=e.file_reference,t}if(t&&Object.assign(e,t),this.docs[e.id]=e,e.attributes.forEach(t=>{switch(t._){case"documentAttributeFilename":e.file_name=a.RichTextProcessor.wrapPlainText(t.file_name);break;case"documentAttributeAudio":e.duration=t.duration,e.audioTitle=t.title,e.audioPerformer=t.performer,e.type=t.pFlags.voice&&"audio/ogg"==e.mime_type?"voice":"audio";break;case"documentAttributeVideo":e.duration=t.duration,e.w=t.w,e.h=t.h,t.pFlags.round_message?e.type="round":e.type="video";break;case"documentAttributeSticker":void 0!==t.alt&&(e.stickerEmojiRaw=t.alt,e.stickerEmoji=a.RichTextProcessor.wrapRichText(e.stickerEmojiRaw,{noLinks:!0,noLinebreaks:!0})),t.stickerset&&("inputStickerSetEmpty"==t.stickerset._?delete t.stickerset:"inputStickerSetID"==t.stickerset._&&(e.stickerSetInput=t.stickerset)),"image/webp"==e.mime_type&&(e.type="sticker",e.sticker=1);break;case"documentAttributeImageSize":e.w=t.w,e.h=t.h;break;case"documentAttributeAnimated":"image/gif"!=e.mime_type&&"video/mp4"!=e.mime_type||(e.type="gif"),e.animated=!0}}),!e.mime_type)switch(e.type){case"gif":case"video":case"round":e.mime_type="video/mp4";break;case"sticker":e.mime_type="image/webp";break;case"audio":e.mime_type="audio/mpeg";break;case"voice":e.mime_type="audio/ogg";break;default:e.mime_type="application/octet-stream"}return c.isServiceWorkerSupported&&("gif"==e.type&&e.size>8e6||"audio"==e.type||"video"==e.type)&&(e.supportsStreaming=!0,e.url||(e.url=this.getFileURL(e))),e.file_name||(e.file_name=""),"application/x-tgsticker"==e.mime_type&&"AnimatedSticker.tgs"==e.file_name&&(e.type="sticker",e.animated=!0,e.sticker=2),"documentEmpty"==e._&&(e.size=0),e}getDoc(e){return o.isObject(e)&&"string"!=typeof e?e:this.docs[e]}getMediaInput(e){return{_:"inputMediaDocument",flags:0,id:{_:"inputDocument",id:e.id,access_hash:e.access_hash,file_reference:e.file_reference},ttl_seconds:0}}getInput(e,t){return{_:"inputDocumentFileLocation",id:e.id,access_hash:e.access_hash,file_reference:e.file_reference,thumb_size:t}}getFileDownloadOptions(e,t){const s=this.getInput(e,null==t?void 0:t.type);let i;return i=t?e.sticker?"image/webp":"image/jpeg":e.mime_type||"application/octet-stream",{dcID:e.dc_id,location:s,size:t?t.size:e.size,mimeType:i,fileName:e.file_name}}getFileURL(e,t=!1,s){let i;return i=t?"download":s?"thumb":e.supportsStreaming?"stream":"document",o.getFileURL(i,this.getFileDownloadOptions(e,s))}getThumbURL(e,t){let s=Promise.resolve();return t.url||(t.bytes?t.url=l.default.getPreviewURLFromBytes(t.bytes,!!e.sticker):s=this.downloadDocNew(e,t)),{thumb:t,promise:s}}getThumb(e,t=!0){var s;if(null===(s=e.thumbs)||void 0===s?void 0:s.length){let s;return t||(s=e.thumbs.find(e=>!e.bytes)),s||(s=e.thumbs[0]),this.getThumbURL(e,s)}return null}getInputFileName(e,t){return d.getFileNameByLocation(this.getInput(e,t),{fileName:e.file_name})}downloadDocNew(e,t){const s=this.getDoc(e);if("documentEmpty"==s._)throw new Error("Document empty!");const n=this.getInputFileName(s,null==t?void 0:t.type);let a=f.default.getDownload(n);if(a)return a;const o=this.getFileDownloadOptions(s,t);a=f.default.download(o);const d=a;return d.then(e=>{t?t.url=URL.createObjectURL(e):(s.supportsStreaming||(s.url=URL.createObjectURL(e)),s.downloaded=!0)}),"voice"!=s.type||r.default.isPlaySupported()||(a=d.then(e=>i(this,void 0,void 0,(function*(){let t=new FileReader;return yield new Promise((i,n)=>{t.onloadend=e=>{let t=new Uint8Array(e.target.result);r.default.decode(t).then(e=>{s.url=e.url,i()},e=>{delete s.downloaded,n(e)})},t.readAsArrayBuffer(e)}),e})))),a}saveDocFile(e){const t=this.getFileDownloadOptions(e);return f.default.downloadToDisc(t,e.file_name)}};t.default=u},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppImManager=void 0;const r=o(s(2)),d=s(0),f=o(s(5)),l=o(s(7)),c=o(s(8)),u=o(s(27)),h=o(s(15)),p=s(3),m=o(s(13)),g=o(s(22)),b=s(10),v=o(s(56)),y=o(s(14)),w=o(s(9)),_=s(20),S=o(s(35)),L=s(4),M=s(95),D=o(s(6)),E=o(s(101)),I=o(s(23)),C=o(s(11)),P=o(s(50)),k=o(s(43)),T=o(s(41)),A=o(s(62)),X=o(s(64)),x=s(36),F=s(1),B=o(s(18)),R=o(s(61)),O=o(s(29)),j=a(s(42)),U=o(s(102)),N=o(s(37)),H=o(s(39)),$=s(19),q=s(26);y.default;class z{constructor(e){this.attachTo=e,this.element=document.getElementById("bubble-contextmenu"),this.buttons={},L.parseMenuButtonsTo(this.buttons,this.element.children),L.attachContextMenuListener(e,e=>{let t=null;try{t=d.findUpClassName(e.target,"bubble__container")}catch(e){}if(!t)return;if(e instanceof MouseEvent&&e.preventDefault(),this.element.classList.contains("active"))return!1;e instanceof MouseEvent&&(e.cancelBubble=!0),t=t.parentElement;let s=+t.dataset.mid;if(!s)return;let i=d.$rootScope.selectedPeerID;this.msgID=s;const n=l.default.getMessage(s);this.buttons.copy.style.display=n.message?"":"none",d.$rootScope.myID==i||i<0&&w.default.hasRights(-i,"pin")?this.buttons.pin.style.display="":this.buttons.pin.style.display="none",this.buttons.edit.style.display=l.default.canEditMessage(s)?"":"none";let a=t.classList.contains("is-in")?"left":"right";L.positionMenu(e,this.element,a),L.openBtnMenu(this.element)}),this.buttons.copy.addEventListener("click",()=>{let e=l.default.getMessage(this.msgID),t=e?e.message:"";var s=document.createElement("textarea");s.value=t,s.style.position="fixed",document.body.appendChild(s),s.focus(),s.select();try{document.execCommand("copy")}catch(e){console.error("Oops, unable to copy",e)}document.body.removeChild(s)}),this.buttons.delete.addEventListener("click",()=>{let e,t,s,i=d.$rootScope.selectedPeerID,n=c.default.getPeerTitle(i,!1,!0),a=e=>{l.default.deleteMessages([this.msgID],e)};e="Delete Message?",t="Are you sure you want to delete this message?",i==d.$rootScope.myID?s=[{text:"DELETE",isDanger:!0,callback:()=>a(!1)}]:(s=[{text:"DELETE JUST FOR ME",isDanger:!0,callback:()=>a(!1)}],i>0?s.push({text:"DELETE FOR ME AND "+n,isDanger:!0,callback:()=>a(!0)}):w.default.hasRights(-i,"deleteRevoke")&&s.push({text:"DELETE FOR ALL",isDanger:!0,callback:()=>a(!0)})),s.push({text:"CANCEL",isCancel:!0}),new x.PopupPeer("popup-delete-chat",{peerID:i,title:"Delete Message?",description:"Are you sure you want to delete this message?",buttons:s}).show()}),this.buttons.reply.addEventListener("click",()=>{const e=l.default.getMessage(this.msgID),t=Q.chatInputC;t.setTopInfo(c.default.getPeerTitle(e.fromID,!0),e.message,void 0,e),t.replyToMsgID=this.msgID,t.editMsgID=0}),this.buttons.forward.addEventListener("click",()=>{P.default.init([this.msgID])}),this.buttons.edit.addEventListener("click",()=>{const e=l.default.getMessage(this.msgID),t=Q.chatInputC;t.setTopInfo("Editing",e.message,e.message,e),t.replyToMsgID=0,t.editMsgID=this.msgID}),this.buttons.pin.addEventListener("click",()=>{l.default.updatePinnedMessage(d.$rootScope.selectedPeerID,this.msgID)})}}class W{constructor(){this.foundCount=0,this.selectedIndex=0,this.onDateClick=e=>{d.cancelEvent(e),new U.default(new Date,Q.onDatePick).show()},this.selectResult=e=>{if(this.setPeerPromise)return this.setPeerPromise;const t=+e.getAttribute("data-peerID"),s=+e.dataset.mid||void 0,i=d.whichChild(e);i==this.foundCount-1?this.upBtn.setAttribute("disabled","true"):this.upBtn.removeAttribute("disabled"),i?this.downBtn.removeAttribute("disabled"):this.downBtn.setAttribute("disabled","true"),this.results.classList.remove("active"),Q.bubblesContainer.classList.remove("search-results-active");const n=Q.setPeer(t,s);this.setPeerPromise=(n instanceof Promise?n:Promise.resolve(n)).then(()=>{this.selectedIndex=i,this.foundCountEl.innerText=`${i+1} of ${this.foundCount}`;const e=this.searchGroup.list.childElementCount;this.selectedIndex>=e-6&&this.appSearch.searchMore()}).finally(()=>{this.setPeerPromise=null})},this.onResultsClick=e=>{const t=d.findUpTag(e.target,"LI");t&&this.selectResult(t)},this.onFooterClick=e=>{this.foundCount&&(Q.bubblesContainer.classList.toggle("search-results-active"),this.results.classList.toggle("active"))},this.onUpClick=e=>{d.cancelEvent(e),this.selectResult(this.searchGroup.list.children[this.selectedIndex+1])},this.onDownClick=e=>{d.cancelEvent(e),this.selectResult(this.searchGroup.list.children[this.selectedIndex-1])},this.element=document.createElement("div"),this.element.classList.add("sidebar-header","chat-search","chats-container"),this.backBtn=document.createElement("button"),this.backBtn.classList.add("btn-icon","tgico-back","sidebar-close-button"),$.ripple(this.backBtn),this.backBtn.addEventListener("click",()=>{Q.topbar.classList.remove("hide-pinned"),this.element.remove(),this.searchInput.remove(),this.results.remove(),this.footer.remove(),this.footer.removeEventListener("click",this.onFooterClick),this.dateBtn.removeEventListener("click",this.onDateClick),this.upBtn.removeEventListener("click",this.onUpClick),this.downBtn.removeEventListener("click",this.onDownClick),this.searchGroup.list.removeEventListener("click",this.onResultsClick),Q.bubblesContainer.classList.remove("search-results-active")},{once:!0}),this.searchInput=new O.default("Search"),this.results=document.createElement("div"),this.results.classList.add("chat-search-results","chats-container"),this.searchGroup=new j.SearchGroup("","messages",void 0,"",!1),this.searchGroup.list.addEventListener("click",this.onResultsClick),this.appSearch=new j.default(this.results,this.searchInput,{messages:this.searchGroup},e=>{this.foundCount=e,this.foundCount?this.selectResult(this.searchGroup.list.children[0]):(this.foundCountEl.innerText=this.searchInput.value?"No results":"",this.results.classList.remove("active"),Q.bubblesContainer.classList.remove("search-results-active"),this.upBtn.setAttribute("disabled","true"),this.downBtn.setAttribute("disabled","true"))}),this.appSearch.beginSearch(d.$rootScope.selectedPeerID),Q.bubblesContainer.append(this.results),this.footer=document.createElement("div"),this.footer.classList.add("chat-search-footer"),this.footer.addEventListener("click",this.onFooterClick),$.ripple(this.footer),this.foundCountEl=document.createElement("span"),this.foundCountEl.classList.add("chat-search-count"),this.dateBtn=document.createElement("button"),this.dateBtn.classList.add("btn-icon","tgico-calendar"),this.controls=document.createElement("div"),this.controls.classList.add("chat-search-controls"),this.upBtn=document.createElement("button"),this.upBtn.classList.add("btn-icon","tgico-up"),this.downBtn=document.createElement("button"),this.downBtn.classList.add("btn-icon","tgico-down"),this.upBtn.setAttribute("disabled","true"),this.downBtn.setAttribute("disabled","true"),this.dateBtn.addEventListener("click",this.onDateClick),this.upBtn.addEventListener("click",this.onUpClick),this.downBtn.addEventListener("click",this.onDownClick),this.controls.append(this.upBtn,this.downBtn),this.footer.append(this.foundCountEl,this.dateBtn,this.controls),Q.topbar.parentElement.insertBefore(this.footer,Q.chatInput),this.element.append(this.backBtn,this.searchInput.container),Q.topbar.classList.add("hide-pinned"),Q.topbar.parentElement.append(this.element),this.searchInput.input.focus()}}class G{constructor(){this.container=document.createElement("div"),this.container.classList.add("pinned-audio","pinned-container"),this.container.style.display="none",this.toggle=document.createElement("div"),this.toggle.classList.add("pinned-audio-ico","tgico"),this.title=document.createElement("div"),this.title.classList.add("pinned-audio-title"),this.subtitle=document.createElement("div"),this.subtitle.classList.add("pinned-audio-subtitle"),this.close=document.createElement("button"),this.close.classList.add("pinned-audio-close","btn-icon","tgico-close"),this.container.append(this.toggle,this.title,this.subtitle,this.close),this.close.addEventListener("click",e=>{d.cancelEvent(e),this.container.style.display="none",this.container.parentElement.classList.remove("is-audio-shown"),this.toggle.classList.contains("flip-icon")&&N.default.toggle()}),this.toggle.addEventListener("click",e=>{d.cancelEvent(e),N.default.toggle()}),d.$rootScope.$on("audio_play",e=>{const{doc:t,mid:s}=e.detail;let i,n;if("voice"==t.type||"round"==t.type){const e=l.default.getMessage(s);i=c.default.getPeerTitle(e.fromID,!1,!0),n=_.formatDate(e.date,!1,!1)}else i=t.audioTitle||t.file_name,n=t.audioPerformer?p.RichTextProcessor.wrapPlainText(t.audioPerformer):"Unknown Artist";if(this.title.innerHTML=i,this.subtitle.innerHTML=n,this.toggle.classList.add("flip-icon"),this.container.dataset.mid=""+s,this.container.style.display){const e=Q.scrollable.scrollTop;this.container.style.display="",this.container.parentElement.classList.add("is-audio-shown"),Q.scrollable.scrollTop=e}}),d.$rootScope.$on("audio_pause",()=>{this.toggle.classList.remove("flip-icon")})}}class V{constructor(){this.columnEl=document.getElementById("column-center"),this.btnJoin=this.columnEl.querySelector(".chat-join"),this.btnMute=this.columnEl.querySelector(".chat-mute-button"),this.avatarEl=document.getElementById("im-avatar"),this.titleEl=document.getElementById("im-title"),this.subtitleEl=document.getElementById("im-subtitle"),this.bubblesContainer=document.getElementById("bubbles"),this.chatInner=document.getElementById("bubbles-inner"),this.searchBtn=this.columnEl.querySelector(".chat-search-button"),this.goDownBtn=this.columnEl.querySelector("#bubbles-go-down"),this.menuButtons={},this.myID=0,this.peerID=0,this.bubbles={},this.dateMessages={},this.unreadOut=new Set,this.needUpdate=[],this.offline=!1,this.updateStatusInterval=0,this.pinnedMsgID=0,this.pinnedMessageContainer=null,this.lazyLoadQueue=new I.default,this.scroll=null,this.scrollable=null,this.preloader=null,this.typingTimeouts={},this.typingUsers={},this.topbar=document.getElementById("topbar"),this.chatInput=document.getElementById("chat-input"),this.chatInfo=this.columnEl.querySelector(".chat-info"),this.contextMenu=new z(this.bubblesContainer),this.setPeerPromise=null,this.bubbleGroups=new E.default,this.scrolledDown=!0,this.onScrollRAF=0,this.isScrollingTimeout=0,this.unreadedObserver=null,this.unreaded=[],this.loadedTopTimes=0,this.loadedBottomTimes=0,this.messagesQueuePromise=null,this.messagesQueue=[],this.messagesQueueOnRender=null,this.firstUnreadBubble=null,this.stickyIntersector=null,this.cleanupID=0,this.selectTab=q.horizontalMenu(null,document.getElementById("main-columns")),this.closeBtn=this.topbar.querySelector(".sidebar-close-button"),this.onDatePick=e=>{const t=this.peerID;l.default.requestHistory(t,0,2,-1,e).then(e=>{var s;(null===(s=null==e?void 0:e.messages)||void 0===s?void 0:s.length)?this.peerID==t&&Q.setPeer(this.peerID,e.messages[0].mid):this.log.error("no history!")})},this.log=b.logger("IM",b.LogLevels.log|b.LogLevels.warn|b.LogLevels.debug|b.LogLevels.error),this.chatInputC=new M.ChatInput,this.preloader=new S.default(null,!1),this.selectTab(0),L.parseMenuButtonsTo(this.menuButtons,this.columnEl.querySelector(".chat-more-button").firstElementChild.children),this.chatAudio=new G,this.topbar.insertBefore(this.chatAudio.container,this.chatInfo.nextElementSibling),r.default.getUserID().then(e=>{this.myID=d.$rootScope.myID=e}),d.$rootScope.$on("user_auth",e=>{let t=e.detail;this.myID=d.$rootScope.myID=t?t.id:0}),d.$rootScope.$on("history_append",e=>{let t=e.detail;this.scrolledAllDown?this.renderNewMessagesByIDs([t.messageID],!0):this.setPeer(this.peerID,0)}),d.$rootScope.$on("history_update",e=>{let t=e.detail;if(t.mid&&t.peerID==this.peerID){let e=t.mid,s=this.bubbles[e];if(!s)return;let i=l.default.getMessage(e);this.getDateContainerByMessage(i,!1).container.append(s),this.bubbleGroups.addBubble(s,i,!1)}}),d.$rootScope.$on("history_multiappend",e=>{let t=e.detail;if(!(this.peerID in t))return;let s=t[this.peerID];this.renderNewMessagesByIDs(s)}),d.$rootScope.$on("history_delete",e=>{let t=e.detail;this.deleteMessagesByIDs(Object.keys(t.msgs).map(e=>+e))}),d.$rootScope.$on("dialog_flush",e=>{let t=e.detail.peerID;this.peerID==t&&this.deleteMessagesByIDs(Object.keys(this.bubbles).map(e=>+e))}),d.$rootScope.$on("chat_update",e=>{var t;const s=e.detail;if(this.peerID==-s){const e=w.default.getChat(s);this.btnJoin.classList.toggle("hide",!(null===(t=null==e?void 0:e.pFlags)||void 0===t?void 0:t.left))}}),d.$rootScope.$on("message_sent",e=>{var t,s,i;const{tempID:n,mid:a}=e.detail;this.log("message_sent",e.detail);const o=l.default.getMessage(a);if(o.media)if(o.media.photo){const e=m.default.getPhoto(n);if(e){const t=o.media.photo;t.downloaded=e.downloaded,t.url=e.url}}else if(o.media.document){const e=C.default.getDoc(n);if(e&&e.type&&"sticker"!=e.type){const t=o.media.document;t.downloaded=e.downloaded,t.url=e.url}}let r=this.bubbles[n];if(r){if(this.bubbles[a]=r,o.grouped_id){let e=r.querySelectorAll(".album-item"),t=d.getObjectKeysAndSort(l.default.groupedMessagesStorage[o.grouped_id]);Array.from(e).forEach((e,s)=>{e.dataset.mid=""+t[s]})}if(null===(t=o.media)||void 0===t?void 0:t.poll){const e=o.media.poll,t=r.querySelector("poll-element");t&&(t.setAttribute("poll-id",e.id),t.setAttribute("message-id",a),delete H.default.polls[n],delete H.default.results[n])}if(["audio","voice"].includes(null===(i=null===(s=o.media)||void 0===s?void 0:s.document)||void 0===i?void 0:i.type)){const e=r.querySelector("audio-element");e.setAttribute("doc-id",o.media.document.id),e.setAttribute("message-id",""+a)}r.classList.remove("is-sending"),r.classList.add("is-sent"),r.dataset.mid=a,this.bubbleGroups.removeBubble(r,n),delete this.bubbles[n]}else this.log.warn("message_sent there is no bubble",e.detail);this.unreadOut.has(n)&&(this.unreadOut.delete(n),this.unreadOut.add(a))}),d.$rootScope.$on("message_edit",e=>{let{peerID:t,mid:s,id:i,justMedia:n}=e.detail;if(t!=this.peerID)return;let a=l.default.getMessage(s),o=this.bubbles[s];if(!o&&a.grouped_id){let e=this.getAlbumBubble(a.grouped_id);o=e.bubble,a=e.message}o&&this.renderMessage(a,!0,!1,o,!1)}),d.$rootScope.$on("messages_downloaded",e=>{const t=e.detail,s=l.default.getPinnedMessage(this.peerID);t.forEach(e=>{s.mid==e&&(this.messagesQueuePromise||Promise.resolve()).then(()=>{this.setPinnedMessage(s)}),this.needUpdate.forEachReverse((t,s)=>{if(t.replyMid==e){let{mid:e,replyMid:t}=this.needUpdate.splice(s,1)[0],i=this.bubbles[e];if(!i)return;let n=l.default.getMessage(e);l.default.getMessage(t).deleted&&delete n.reply_to_mid,this.renderMessage(n,!0,!1,i,!1)}})})}),d.$rootScope.$on("apiUpdate",e=>{let t=e.detail;this.handleUpdate(t)}),window.addEventListener("blur",()=>{B.default.checkAnimations(!0),this.offline=d.$rootScope.idle.isIDLE=!0,this.updateStatus(),clearInterval(this.updateStatusInterval),window.addEventListener("focus",()=>{this.offline=d.$rootScope.idle.isIDLE=!1,this.updateStatus(),this.updateStatusInterval=window.setInterval(()=>this.updateStatus(),5e4),B.default.checkAnimations(!1)},{once:!0})}),this.topbar.addEventListener("click",e=>{const t=d.findUpClassName(e.target,"pinned-container");if(t){d.cancelEvent(e);const s=+t.dataset.mid,i=l.default.getMessage(s);this.setPeer(i.peerID,s)}else g.default.toggleSidebar(!0)}),this.bubblesContainer.addEventListener("click",e=>{var t,s;let i=e.target,n=null;try{n=d.findUpClassName(i,"bubble")}catch(e){}if(!n)return;if(n.classList.contains("is-date")&&d.findUpClassName(i,"bubble__container")){if(n.classList.contains("is-sticky")&&!this.chatInner.classList.contains("is-scrolling"))return;for(let e in this.dateMessages){if(this.dateMessages[e].div==n){new U.default(new Date(+e),this.onDatePick).show();break}}return}let a=d.findUpClassName(i,"contact");if(a)this.setPeer(+a.dataset.peerID);else if("SPAN"!=i.tagName)if(n.classList.contains("sticker")&&i.parentElement.classList.contains("attachment")){const e=+n.dataset.mid,s=null===(t=l.default.getMessage(e).media)||void 0===t?void 0:t.document;(null==s?void 0:s.stickerSetInput)&&new R.default(s.stickerSetInput).show()}else{if("IMG"==i.tagName&&!i.classList.contains("emoji")&&"AVATAR-ELEMENT"!=i.parentElement.tagName||i.classList.contains("album-item")||"VIDEO"==i.tagName&&!n.classList.contains("round")){let e=+(null===(s=d.findUpClassName(i,"album-item"))||void 0===s?void 0:s.dataset.mid)||+n.dataset.mid,t=l.default.getMessage(e);if(!t)return void this.log.warn("no message by messageID:",e);let a=[],o=Object.keys(this.bubbles).map(e=>+e).filter(e=>{let t=l.default.getMessage(e);return t.media&&(t.media.photo||t.media.document&&("video"==t.media.document.type||"gif"==t.media.document.type)||t.media.webpage&&(t.media.webpage.document||t.media.webpage.photo))}).sort((e,t)=>e-t);o.forEach(e=>{let t=".album-item img, .album-item video, .preview img, .preview video, ";t+=this.bubbles[e].classList.contains("with-media-tail")?".bubble__media-container":".attachment img, .attachment video";let s=this.bubbles[e].querySelectorAll(t);Array.from(s).forEach(t=>{let s=d.findUpClassName(t,"album-item");a.push({element:t,mid:+(null==s?void 0:s.dataset.mid)||e})})}),a.sort((e,t)=>e.mid-t.mid);let r=a.findIndex(t=>t.mid==e);this.log("open mediaViewer single with ids:",o,r,a),v.default.openMedia(t,a[r].element,!0,this.scroll.parentElement,a.slice(0,r),a.slice(r+1))}if(-1===["IMG","DIV","AVATAR-ELEMENT"].indexOf(i.tagName)&&(i=d.findUpTag(i,"DIV")),"DIV"==i.tagName||"AVATAR-ELEMENT"==i.tagName){if(i.classList.contains("goto-original")){let e=n.dataset.savedFrom.split("_"),t=+e[0],s=+e[1];return void this.setPeer(t,s)}if(i.classList.contains("forward")){const e=+n.dataset.mid;return void P.default.init([e])}if(i.classList.contains("name")){let e=+i.dataset.peerID;return void(isNaN(e)||this.setPeer(e))}if("AVATAR-ELEMENT"==i.tagName){let e=+i.getAttribute("peer");return void(isNaN(e)||this.setPeer(e))}let t=!1;try{t=!!d.findUpClassName(e.target,"reply")}catch(e){}if(t&&n.classList.contains("is-reply")){let e=+n.getAttribute("data-original-mid");this.setPeer(this.peerID,e)}}else if("IMG"==i.tagName&&"AVATAR-ELEMENT"==i.parentElement.tagName){let e=+i.parentElement.getAttribute("peer");isNaN(e)||this.setPeer(e)}}else{let e=i.parentElement.querySelector("video");e&&e.click()}}),this.closeBtn.addEventListener("click",e=>{d.cancelEvent(e),this.setPeer(0)}),this.searchBtn.addEventListener("click",e=>{d.cancelEvent(e),this.peerID&&g.default.beginSearch()}),this.btnMute.addEventListener("click",e=>{d.cancelEvent(e),this.mutePeer(this.peerID)}),this.btnJoin.addEventListener("click",e=>{d.cancelEvent(e),this.btnJoin.setAttribute("disabled","true"),w.default.joinChannel(-this.peerID).finally(()=>{this.btnJoin.removeAttribute("disabled")})}),this.menuButtons.mute.addEventListener("click",e=>{this.mutePeer(this.peerID)}),this.menuButtons.search.addEventListener("click",e=>{new W});document.body.addEventListener("keydown",e=>{let t=e.target;if(this.chatInputC.attachMediaPopUp.container.classList.contains("active"))return"INPUT"!=t.tagName&&this.chatInputC.attachMediaPopUp.captionInput.focus(),void("Enter"!=e.key||F.touchSupport?"Escape"==e.key&&this.chatInputC.attachMediaPopUp.container.classList.remove("active"):this.chatInputC.attachMediaPopUp.sendBtn.click());if("Escape"==e.key)v.default.wholeDiv.classList.contains("active")?v.default.buttons.close.click():P.default.container.classList.contains("active")?P.default.close():this.chatInputC.replyElements.container.classList.contains("active")?this.chatInputC.replyElements.cancelBtn.click():0!=this.peerID&&this.setPeer(0);else{if("Meta"==e.key||"Control"==e.key)return;if("KeyC"==e.code&&(e.ctrlKey||e.metaKey)&&"INPUT"!=t.tagName)return}e.target!=this.chatInputC.messageInput&&"INPUT"!=t.tagName&&(this.chatInputC.messageInput.focus(),d.placeCaretAtEnd(this.chatInputC.messageInput))}),this.goDownBtn.addEventListener("click",()=>{l.default.getDialogByPeerID(this.peerID)[0]?this.setPeer(this.peerID):(this.log("will scroll down 3"),this.scroll.scrollTop=this.scroll.scrollHeight)}),this.updateStatusInterval=window.setInterval(()=>this.updateStatus(),5e4),this.updateStatus(),setInterval(()=>this.setPeerStatus(),6e4),this.setScroll(),this.stickyIntersector=new X.default(this.scrollable.container,(e,t)=>{for(let s in this.dateMessages){let i=this.dateMessages[s];if(i.container==t){i.div.classList.toggle("is-sticky",e);break}}}),this.unreadedObserver=new IntersectionObserver(e=>{if(this.offline)return;let t=[];if(e.forEach(e=>{if(e.isIntersecting){let s=e.target,i=+s.dataset.mid;t.push(i),this.unreadedObserver.unobserve(s),this.unreaded.findAndSplice(e=>e==i)}}),t.length){let e=Math.max(...t),s=t.length;for(let t=this.unreaded.length-1;t>=0;--t){this.unreaded[t]<e&&(s++,this.unreaded.splice(t,1))}this.log("will readHistory by ids:",e,s),l.default.readHistory(this.peerID,e,s).catch(t=>{this.log.error("readHistory err:",t),l.default.readHistory(this.peerID,e,s)})}})}setPinnedMessage(e){const t=this.scrollable.container.scrollTop,s=_.wrapReply("Pinned Message",e.message,e,!0);s.dataset.mid=""+e.mid,s.classList.add("pinned-container");const i=document.createElement("button");i.classList.add("pinned-message-close","btn-icon","tgico-close"),i.addEventListener("click",e=>{d.cancelEvent(e);const t=this.scrollable.scrollTop;s.remove(),this.topbar.classList.remove("is-pinned-shown"),this.pinnedMessageContainer=null,this.scrollable.scrollTop=t-52},{once:!0}),s.append(i),this.topbar.insertBefore(s,this.btnJoin),this.topbar.classList.add("is-pinned-shown"),this.pinnedMessageContainer&&this.pinnedMessageContainer.remove(),this.pinnedMessageContainer=s,this.scrollable.scrollTop=t+52}updateStatus(){return this.myID?(f.default.setUserStatus(this.myID,this.offline),r.default.invokeApi("account.updateStatus",{offline:this.offline})):Promise.resolve()}getAlbumBubble(e){let t=l.default.groupedMessagesStorage[e];for(let e in t){let t=+e;if(this.bubbles[t])return{bubble:this.bubbles[t],message:l.default.getMessage(t)}}return null}loadMoreHistory(e,t=!1){if(!this.peerID||this.setPeerPromise||e&&this.getHistoryTopPromise||!e&&this.getHistoryBottomPromise)return;let s=Object.keys(this.bubbles).map(e=>+e).filter(e=>e>0).sort((e,t)=>e-t);if(!s.length)return;if(e&&!this.scrolledAll&&(this.log("Will load more (up) history by id:",s[0],"maxID:",s[s.length-1],s),this.getHistory(s[0],!0,void 0,void 0,t)),this.scrolledAllDown)return;let i=l.default.getDialogByPeerID(this.peerID)[0];e||i&&-1!==s.indexOf(i.top_message)||(this.log("Will load more (down) history by maxID:",s[s.length-1],s),this.getHistory(s[s.length-1],!1,!0,void 0,t))}onScroll(e){this.onScrollRAF&&window.cancelAnimationFrame(this.onScrollRAF),this.onScrollRAF=window.requestAnimationFrame(()=>{F.touchSupport||(this.isScrollingTimeout?clearTimeout(this.isScrollingTimeout):this.chatInner.classList.contains("is-scrolling")||this.chatInner.classList.add("is-scrolling"),this.isScrollingTimeout=setTimeout(()=>{this.chatInner.classList.remove("is-scrolling"),this.isScrollingTimeout=0},1350)),this.scroll.scrollHeight-Math.round(this.scroll.scrollTop+this.scroll.offsetHeight)<=1?(this.scroll.parentElement.classList.add("scrolled-down"),this.scrolledDown=!0):this.scroll.parentElement.classList.contains("scrolled-down")&&(this.scroll.parentElement.classList.remove("scrolled-down"),this.scrolledDown=!1),this.onScrollRAF=0})}setScroll(){this.scrollable=new D.default(this.bubblesContainer,"y","IM",this.chatInner,300),this.scroll=this.scrollable.container,this.bubblesContainer.append(this.goDownBtn),this.scrollable.onScrolledTop=()=>this.loadMoreHistory(!0),this.scrollable.onScrolledBottom=()=>this.loadMoreHistory(!1),this.scroll.addEventListener("scroll",this.onScroll.bind(this)),this.scroll.parentElement.classList.add("scrolled-down"),F.touchSupport&&(this.scroll.addEventListener("touchmove",()=>{this.isScrollingTimeout?clearTimeout(this.isScrollingTimeout):this.chatInner.classList.contains("is-scrolling")||this.chatInner.classList.add("is-scrolling")},{passive:!0}),this.scroll.addEventListener("touchend",()=>{this.chatInner.classList.contains("is-scrolling")&&(this.isScrollingTimeout&&clearTimeout(this.isScrollingTimeout),this.isScrollingTimeout=setTimeout(()=>{this.chatInner.classList.remove("is-scrolling"),this.isScrollingTimeout=0},1350))},{passive:!0}))}setPeerStatus(e=!1){if(this.myID)if(this.peerID<0){let t=c.default.getPeer(this.peerID),s=c.default.isChannel(this.peerID)&&!c.default.isMegagroup(this.peerID);this.subtitleEl.classList.remove("online"),g.default.profileElements.subtitle.classList.remove("online"),e&&(this.subtitleEl.innerText=g.default.profileElements.subtitle.innerText=""),u.default.getChatFull(t.id).then(e=>{this.log("chatInfo res:",e);let i=e.participants_count||e.participants&&e.participants.participants&&e.participants.participants.length;if(i){let e=d.numberWithCommas(i)+" "+(s?"followers":"members");if(this.subtitleEl.innerText=g.default.profileElements.subtitle.innerText=e,i<2)return;w.default.getOnlines(t.id).then(t=>{t>1&&(e+=", "+d.numberWithCommas(t)+" online"),this.subtitleEl.innerText=g.default.profileElements.subtitle.innerText=e})}})}else if(f.default.isBot(this.peerID))this.subtitleEl.innerText="bot",g.default.profileElements.subtitle.innerText="bot";else{let e=f.default.getUser(this.peerID);if(this.myID==this.peerID)this.subtitleEl.innerText=g.default.profileElements.subtitle.innerText="";else if(e&&e.status){let t=f.default.getUserStatusString(e.id);"online"==t&&(this.subtitleEl.classList.add("online"),g.default.profileElements.subtitle.classList.add("online")),g.default.profileElements.subtitle.innerText=t,this.typingUsers[this.peerID]==this.peerID?(this.subtitleEl.innerText="typing...",this.subtitleEl.classList.add("online")):(this.subtitleEl.innerText=t,"online"!=t&&(this.subtitleEl.classList.remove("online"),g.default.profileElements.subtitle.classList.remove("online")))}}}cleanup(e=!1){this.scrolledAll=!1,this.scrolledAllDown=!1,this.bubbles={},this.dateMessages={},this.bubbleGroups.cleanup(),this.unreadOut.clear(),this.needUpdate.length=0,this.chatInputC.messageInput.innerHTML="",this.chatInputC.replyElements.cancelBtn.click(),e&&(this.scrollable.container.innerHTML=""),this.peerChanged=!1,this.firstUnreadBubble=null,this.attachedUnreadBubble=!1,this.messagesQueue.length=0,this.messagesQueuePromise=null,this.getHistoryTopPromise=this.getHistoryBottomPromise=void 0,this.stickyIntersector.disconnect(),this.unreadedObserver.disconnect(),this.unreaded.length=0,this.loadedTopTimes=this.loadedBottomTimes=0,this.cleanupID++}findMountedBubbleByMsgID(e){return this.bubbles[d.getObjectKeysAndSort(this.bubbles).find(t=>{var s;return!(t<e)&&!!(null===(s=this.bubbles[t])||void 0===s?void 0:s.parentElement)})]}setPeer(e,t){var s;if(0==e)return g.default.toggleSidebar(!1),this.topbar.style.display=this.chatInput.style.display=this.goDownBtn.style.display="none",this.cleanup(!0),this.peerID=d.$rootScope.selectedPeerID=0,d.$rootScope.$broadcast("peer_changed",this.peerID),F.mediaSizes.isMobile&&this.selectTab(0),!1;const i=this.peerID==e;if(this.setPeerPromise&&i)return this.setPeerPromise;const n=l.default.getDialogByPeerID(e)[0]||null;let a=t<=0?t:null!==(s=null==n?void 0:n.top_message)&&void 0!==s?s:0;const o=void 0!==t;if(!o&&n&&(t=n.unread_count&&!i?n.read_inbox_max_id:n.top_message),i){if(this.bubbles[t]){if(o){const e=this.findMountedBubbleByMsgID(t);this.scrollable.scrollIntoView(e),this.highlightBubble(e)}else n&&t==a&&(this.log("will scroll down",this.scroll.scrollTop,this.scroll.scrollHeight),this.scroll.scrollTop=this.scroll.scrollHeight);return!0}}else g.default.searchCloseBtn.click();this.peerID=d.$rootScope.selectedPeerID=e,this.log("setPeer peerID:",this.peerID,n,t,a);const r=t!=a,f=r?0:a,c=i&&Math.max(...Object.keys(this.bubbles).map(e=>+e)),u=this.chatInner;this.cleanup(),this.chatInner=document.createElement("div"),this.chatInner.id="bubbles-inner",this.scrollable.appendTo=this.chatInner,this.chatInner.className=u.className,this.chatInner.classList.add("disable-hover","is-scrolling"),i||this.lazyLoadQueue.clear(),this.lazyLoadQueue.lock();const{promise:h,cached:p}=this.getHistory(t,!0,r,f);return i?this.peerChanged=!0:g.default.setPeer(this.peerID),p||(this.scrollable.container.innerHTML="",i||this.finishPeerChange(),this.preloader.attach(this.bubblesContainer),F.mediaSizes.isMobile&&this.selectTab(1)),B.default.lockGroup("chat"),this.setPeerPromise=Promise.all([h.then(()=>{var s;if(p?(this.scrollable.container.innerHTML="",i||this.finishPeerChange(),F.mediaSizes.isMobile&&this.selectTab(1)):this.preloader.detach(),this.scrollable.container.append(this.chatInner),B.default.unlockGroup("chat"),B.default.checkAnimations(!1,"chat"),this.lazyLoadQueue.unlock(),n&&(o||t!=a)&&(this.bubbles[t]||this.firstUnreadBubble)){this.scrollable.scrollLocked&&(clearTimeout(this.scrollable.scrollLocked),this.scrollable.scrollLocked=0);const e=c>0&&(c<t||t<0),s=n.read_inbox_max_id==t&&!o;e||!i&&!s||(this.scrollable.scrollTop=this.scrollable.scrollHeight);let a=s&&this.firstUnreadBubble||this.bubbles[t];(null==a?void 0:a.parentElement)||(a=this.findMountedBubbleByMsgID(t)),this.scrollable.scrollIntoView(a,i),s||this.highlightBubble(a)}else this.scrollable.scrollTop=this.scrollable.scrollHeight;return t&&!this.bubbles[a]&&t!=a||(this.scrolledAllDown=!0),this.log("scrolledAllDown:",this.scrolledAllDown),this.scrolledAllDown&&n&&l.default.readHistory(e,n.top_message),(null===(s=null==n?void 0:n.pFlags)||void 0===s?void 0:s.unread_mark)&&l.default.markDialogUnread(e,!0),this.chatInner.classList.remove("disable-hover","is-scrolling"),!0}).catch(e=>{throw this.log.error("getHistory promise error:",e),e})]).catch(e=>(this.log.error("setPeer promises error:",e),this.preloader.detach(),!1)).then(t=>(this.peerID==e&&(this.setPeerPromise=null),!!t)),g.default.setLoadMutex(this.setPeerPromise),g.default.loadSidebarMedia(!0),this.setPeerPromise}finishPeerChange(){var e,t;if(this.peerChanged)return;let s=this.peerID;this.peerChanged=!0,this.avatarEl.setAttribute("peer",""+this.peerID),this.avatarEl.update();const i=c.default.isAnyGroup(s),n=c.default.isChannel(s),a=n&&w.default.hasRights(-s,"send");this.chatInner.classList.toggle("has-rights",a),this.chatInput.style.display=!n||a?"":"none",this.topbar.classList.remove("is-pinned-shown"),this.topbar.style.display="",this.chatInner.classList.toggle("is-chat",i||s==this.myID),this.chatInner.classList.toggle("is-channel",n),this.btnMute.classList.toggle("hide",!c.default.isBroadcast(s)),this.btnJoin.classList.toggle("hide",!(null===(t=null===(e=w.default.getChat(-this.peerID))||void 0===e?void 0:e.pFlags)||void 0===t?void 0:t.left)),this.menuButtons.mute.style.display=this.myID==this.peerID?"none":"";const o=l.default.getPinnedMessage(s);o&&!o.deleted?this.setPinnedMessage(o):this.pinnedMessageContainer&&(this.pinnedMessageContainer.remove(),this.pinnedMessageContainer=null),window.requestAnimationFrame(()=>{let e="";e=this.peerID==this.myID?"Saved Messages":c.default.getPeerTitle(this.peerID),this.titleEl.innerHTML=g.default.profileElements.name.innerHTML=e,this.goDownBtn.style.display="",this.setPeerStatus(!0)}),g.default.fillProfileElements(),d.$rootScope.$broadcast("peer_changed",this.peerID)}updateUnreadByDialog(e){let t=this.peerID==this.myID?e.read_inbox_max_id:e.read_outbox_max_id;for(let e of this.unreadOut)if(e>0&&e<=t){let t=this.bubbles[e];t&&(t.classList.remove("is-sent"),t.classList.add("is-read")),this.unreadOut.delete(e)}}deleteMessagesByIDs(e){e.forEach(e=>{if(!(e in this.bubbles))return;let t=this.bubbles[e];delete this.bubbles[e],this.firstUnreadBubble==t&&(this.firstUnreadBubble=null),this.bubbleGroups.removeBubble(t,e),this.unreadedObserver.unobserve(t),this.scrollable.removeElement(t)}),B.default.checkAnimations(!1,"chat"),this.deleteEmptyDateGroups()}renderNewMessagesByIDs(e,t=this.scrolledDown){this.scrolledAllDown?(e.forEach(e=>{let t=l.default.getMessage(e);this.renderMessage(t)}),this.messagesQueuePromise&&t&&(this.scrollable.scrollTo(this.scrollable.scrollHeight-1,!1,!0),this.messagesQueuePromise.then(()=>{this.log("messagesQueuePromise after:",this.chatInner.childElementCount,this.scrollable.scrollHeight),this.scrollable.scrollTo(this.scrollable.scrollHeight,!0,!0),setTimeout(()=>{this.log("messagesQueuePromise afterafter:",this.chatInner.childElementCount,this.scrollable.scrollHeight)},10)}))):this.log("seems search is active, skipping render:",e)}highlightBubble(e){e.dataset.timeout&&(clearTimeout(+e.dataset.timeout),e.classList.remove("is-selected"),e.offsetWidth),e.classList.add("is-selected"),e.dataset.timeout=""+setTimeout(()=>{e.classList.remove("is-selected"),delete e.dataset.timeout},2e3)}getDateContainerByMessage(e,t){const s=new Date(1e3*e.date);s.setHours(0,0,0);const i=s.getTime();if(!(i in this.dateMessages)){let e="";const n=new Date;if(n.setHours(0,0,0,0),n.getTime()==s.getTime())e="Today";else{e=["January","February","March","April","May","June","July","August","September","October","November","December"][s.getMonth()]+" "+s.getDate(),s.getFullYear()!=n.getFullYear()&&(e+=", "+s.getFullYear())}const a=document.createElement("div");a.className="bubble service is-date",a.innerHTML=`<div class="bubble__container"><div class="service-msg">${e}</div></div>`;const o=document.createElement("div");o.className="bubbles-date-group",this.dateMessages[i]={div:a,container:o,firstTimestamp:s.getTime()},o.append(a),t?this.scrollable.prepend(o,!1):this.scrollable.append(o,!1),this.stickyIntersector.observeStickyHeaderChanges(o)}return this.dateMessages[i]}renderMessagesQueue(e,t,s){let i=[];Array.from(t.querySelectorAll("img, video")).forEach(e=>{if(e instanceof HTMLVideoElement){if(!e.src)return;if(e.readyState>=4)return}else if(e.complete||!e.src)return;let t=new Promise((t,s)=>{let i,n=()=>{clearTimeout(o),t(),e.removeEventListener(e instanceof HTMLVideoElement?"canplay":"load",n)};e instanceof HTMLVideoElement?(e.addEventListener("canplay",n),i=()=>e.readyState>=1):(e.addEventListener("load",n),i=()=>e.complete);let a=()=>i()?n():window.requestAnimationFrame(a);window.requestAnimationFrame(a);let o=setTimeout(()=>{t()},1500)});i.push(t)}),this.messagesQueue.push({message:e,bubble:t,reverse:s,promises:i}),this.messagesQueuePromise||(this.messagesQueuePromise=new Promise((e,t)=>{setTimeout(()=>{let s=this.chatInner,i=this.messagesQueue.slice();this.messagesQueue.length=0;let n=i.reduce((e,{promises:t})=>e.concat(t),[]);Promise.all(n).then(()=>{if(this.chatInner!=s)return t("chatInner changed!");this.messagesQueueOnRender&&this.messagesQueueOnRender(),i.forEach(({message:e,bubble:t,reverse:s})=>{let i=this.getDateContainerByMessage(e,s);s?i.container.insertBefore(t,i.div.nextSibling):i.container.append(t)}),e(),this.messagesQueuePromise=null},t)},0)}))}getMiddleware(){let e=this.cleanupID;return()=>this.cleanupID==e}renderMessage(e,t=!1,s=!1,i=null,n=!0){if(this.log.debug("message to render:",e),e.deleted)return;if(e.grouped_id){let t=l.default.groupedMessagesStorage[e.grouped_id],s=Math.max(...Object.keys(t).map(e=>+e));if(e.mid<s)return}let a,o=this.peerID,r=e.fromID==this.myID,u=document.createElement("div");if(u.classList.add("message"),i?(i.className="bubble",a=i.firstElementChild,a.innerHTML="",a.style.marginBottom="",i==this.firstUnreadBubble&&i.classList.add("is-first-unread")):(a=document.createElement("div"),a.classList.add("bubble__container"),(i=document.createElement("div")).classList.add("bubble"),i.appendChild(a),this.bubbles[+e.mid]=i),i.dataset.mid=e.mid,"messageService"==e._){let s=e.action,o=s._;if(d.langPack.hasOwnProperty(o)&&!d.langPack[o])return i;i.className="bubble service";let r=c.default.getPeerTitle(e.fromID),f=document.createElement("div");f.classList.add("name"),f.dataset.peerID=e.fromID,f.innerHTML=r;let l="";if(s.message)l=p.RichTextProcessor.wrapRichText(s.message,{noLinebreaks:!0});else{"messageActionPhoneCall"==o&&(o+="."+s.type);let e=d.langPack[o];e||(e="["+o+"]"),l=e[0].toUpperCase()==e[0]?e:(f.innerText?f.outerHTML+" ":"")+e}return a.innerHTML=`<div class="service-msg">${l}</div>`,n&&this.renderMessagesQueue(e,i,t),i}let h=new Date(1e3*e.date),g=("0"+h.getHours()).slice(-2)+":"+("0"+h.getMinutes()).slice(-2);if(e.views&&(i.classList.add("channel-post"),g=d.formatNumber(e.views,1)+' <i class="tgico-channelviews"></i> '+g,!e.savedFrom)){let e=document.createElement("div");e.classList.add("bubble-beside-button","forward"),e.innerHTML='\n <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24">\n <defs>\n <path d="M13.55 3.24L13.64 3.25L13.73 3.27L13.81 3.29L13.9 3.32L13.98 3.35L14.06 3.39L14.14 3.43L14.22 3.48L14.29 3.53L14.36 3.59L14.43 3.64L22.23 10.85L22.36 10.99L22.48 11.15L22.57 11.31L22.64 11.48L22.69 11.66L22.72 11.85L22.73 12.04L22.71 12.22L22.67 12.41L22.61 12.59L22.53 12.76L22.42 12.93L22.29 13.09L22.23 13.15L14.43 20.36L14.28 20.48L14.12 20.58L13.95 20.66L13.77 20.72L13.58 20.76L13.4 20.77L13.22 20.76L13.03 20.73L12.85 20.68L12.68 20.61L12.52 20.52L12.36 20.4L12.22 20.27L12.16 20.2L12.1 20.13L12.05 20.05L12.01 19.98L11.96 19.9L11.93 19.82L11.89 19.73L11.87 19.65L11.84 19.56L11.83 19.47L11.81 19.39L11.81 19.3L11.8 19.2L11.8 16.42L11 16.49L10.23 16.58L9.51 16.71L8.82 16.88L8.18 17.09L7.57 17.33L7.01 17.6L6.48 17.91L5.99 18.26L5.55 18.64L5.14 19.05L4.77 19.51L4.43 19.99L4.29 20.23L4.21 20.35L4.11 20.47L4 20.57L3.88 20.65L3.75 20.72L3.62 20.78L3.48 20.82L3.33 20.84L3.19 20.84L3.04 20.83L2.9 20.79L2.75 20.74L2.62 20.68L2.53 20.62L2.45 20.56L2.38 20.5L2.31 20.43L2.25 20.36L2.2 20.28L2.15 20.19L2.11 20.11L2.07 20.02L2.04 19.92L2.02 19.83L2.01 19.73L2 19.63L2.04 17.99L2.19 16.46L2.46 15.05L2.85 13.75L3.35 12.58L3.97 11.53L4.7 10.6L5.55 9.8L6.51 9.12L7.59 8.56L8.77 8.13L10.07 7.83L11.48 7.65L11.8 7.63L11.8 4.8L11.91 4.56L12.02 4.35L12.14 4.16L12.25 3.98L12.37 3.82L12.48 3.68L12.61 3.56L12.73 3.46L12.85 3.38L12.98 3.31L13.11 3.27L13.24 3.24L13.37 3.23L13.46 3.23L13.55 3.24Z" id="b13RmHDQtl"></path>\n </defs>\n <use xlink:href="#b13RmHDQtl" opacity="1" fill="#fff" fill-opacity="1"></use>\n </svg>',a.append(e),i.classList.add("with-beside-button")}e.edit_date&&(i.classList.add("is-edited"),g='<i class="edited">edited</i> '+g);let b=document.createElement("span");b.classList.add("time");let v,y,w=document.createElement("div");if(w.classList.add("inner","tgico"),w.innerHTML=g,e.grouped_id){let t=l.default.groupedMessagesStorage[e.grouped_id],s=0;for(let e in t){let i=t[e];if(i.message){if(++s>1)break;v=i.message,y=i.totalEntities}}s>1&&(v=void 0,y=void 0)}v||y||(v=e.message,y=e.totalEntities);let S=p.RichTextProcessor.wrapRichText(v,{entities:y}),M=e.media;if(y&&!M){let e=y.filter(e=>"messageEntityEmoji"==e._),t=v.length;if(e.reduce((e,t)=>e+t.length,0)==t&&e.length<=3){let t=k.default.getAnimatedEmojiSticker(v);if(1==e.length&&!M&&t)M={_:"messageMediaDocument",document:t};else{let t=document.createElement("div");t.classList.add("attachment"),t.innerHTML=S,i.classList.add("emoji-"+e.length+"x"),a.append(t)}i.classList.add("is-message-empty","emoji-big")}else u.innerHTML=S}else u.innerHTML=S;if(b.appendChild(w),u.append(b),a.prepend(u),e.reply_markup&&"replyInlineMarkup"==e.reply_markup._&&e.reply_markup.rows&&e.reply_markup.rows.length){const t=e.reply_markup.rows,s=document.createElement("div");s.classList.add("reply-markup"),t.forEach(t=>{const i=t.buttons;if(!i||!i.length)return;const n=document.createElement("div");n.classList.add("reply-markup-row"),i.forEach(t=>{const s=p.RichTextProcessor.wrapRichText(t.text,{noLinks:!0,noLinebreaks:!0});let i;switch(t._){case"keyboardButtonUrl":{const s=f.default.getUser(e.fromID),n=!(s&&s.pFlags&&s.pFlags.verified),a=p.RichTextProcessor.wrapUrl(t.url,n);i=document.createElement("a"),i.href=a,i.rel="noopener noreferrer",i.target="_blank",i.classList.add("is-link","tgico");break}default:i=document.createElement("button")}i.classList.add("reply-markup-button","rp"),i.innerHTML=s,$.ripple(i),n.append(i)}),s.append(n)}),s.addEventListener("click",s=>{let i=s.target;if(i.classList.contains("reply-markup-button")||(i=d.findUpClassName(i,"reply-markup-button")),!i)return;const n=d.whichChild(i),a=t[d.whichChild(i.parentElement)];if(!a.buttons||!a.buttons[n])return void this.log.warn("no such button",a,n,e);const o=a.buttons[n];A.default.callbackButtonClick(e.mid,o)});const i=45*t.length+"px";a.style.marginBottom=i,s.style.bottom="-"+i,a.prepend(s)}if(r){(e.pFlags.unread||e.mid<0)&&this.unreadOut.add(e.mid);let t="";t=e.mid<0?"is-sending":e.pFlags.unread?"is-sent":"is-read",i.classList.add(t)}else e.pFlags.unread&&(this.unreadedObserver.observe(i),this.unreaded.indexOf(e.mid)||this.unreaded.push(e.mid));const D=r&&(!e.fwd_from||this.peerID!=this.myID);if(M){let t=document.createElement("div");t.classList.add("attachment"),v||i.classList.add("is-message-empty");let s=!1;switch(M._){case"messageMediaPending":{let n=M,a=n.preloader;switch(n.type){case"album":this.log("will wrap pending album"),i.classList.add("hide-name","photo","is-album"),_.wrapAlbum({groupID:""+e.id,attachmentDiv:t,uploading:!0,isOut:!0});break;case"photo":{this.log("will wrap pending photo:",n,e,m.default.getPhoto(e.id));const s=!F.isAndroid;s&&i.classList.add("with-media-tail"),_.wrapPhoto(m.default.getPhoto(e.id),e,t,void 0,void 0,s,!0,this.lazyLoadQueue,null),i.classList.add("hide-name","photo");break}case"video":{let s=C.default.getDoc(e.id);this.log("will wrap pending video:",n,e,s);const o=!F.isAndroid&&!F.isApple&&"round"!=s.type;o&&i.classList.add("with-media-tail"),_.wrapVideo({doc:s,container:t,message:e,boxWidth:F.mediaSizes.active.regular.width,boxHeight:F.mediaSizes.active.regular.height,withTail:o,isOut:D,lazyLoadQueue:this.lazyLoadQueue,middleware:null,group:"chat"}),a.attach(t,!1),i.classList.add("hide-name","video");break}case"audio":case"voice":case"document":{const t=C.default.getDoc(e.id);this.log("will wrap pending doc:",t);const o=_.wrapDocument(t,!1,!0,e.id);if("audio"==t.type||"voice"==t.type)o.preloader=a;else{const e=o.querySelector(".audio-download, .document-ico");a.attach(e,!1)}"voice"==n.type&&i.classList.add("bubble-audio"),i.classList.remove("is-message-empty"),u.classList.add((n.type||"document")+"-message"),u.append(o),s=!0;break}}break}case"messageMediaPhoto":{let s=M.photo;i.classList.add("hide-name","photo");const n=!F.isAndroid;if(n&&i.classList.add("with-media-tail"),e.grouped_id){i.classList.add("is-album");let s=l.default.groupedMessagesStorage[e.grouped_id];if(1!=Object.keys(s).length){_.wrapAlbum({groupID:e.grouped_id,attachmentDiv:t,middleware:this.getMiddleware(),isOut:r,lazyLoadQueue:this.lazyLoadQueue});break}}_.wrapPhoto(s,e,t,void 0,void 0,n,D,this.lazyLoadQueue,this.getMiddleware());break}case"messageMediaWebPage":{s=!0;let t=M.webpage;if("webPageEmpty"==t._)break;i.classList.add("webpage");let n=document.createElement("div");n.classList.add("box","web");let o,r,d=document.createElement("div");d.classList.add("quote"),(t.photo||t.document)&&(o=document.createElement("div"),o.classList.add("preview-resizer"),r=document.createElement("div"),r.classList.add("preview"),o.append(r));let f=null;t.document&&(f=t.document,"gif"==f.type||"video"==f.type?(i.classList.add("video"),_.wrapVideo({doc:f,container:r,message:e,boxWidth:F.mediaSizes.active.webpage.width,boxHeight:F.mediaSizes.active.webpage.height,lazyLoadQueue:this.lazyLoadQueue,middleware:this.getMiddleware(),isOut:D,group:"chat"})):f=null),o&&d.append(o);let l=document.createElement("div");if(l.classList.add("quote-text"),t.site_name){let e=document.createElement("a");e.classList.add("name"),e.setAttribute("target","_blank"),e.href=t.url||"#",e.innerHTML=p.RichTextProcessor.wrapEmojiText(t.site_name),l.append(e)}if(t.title){let e=document.createElement("div");e.classList.add("title"),e.innerHTML=p.RichTextProcessor.wrapRichText(t.title),l.append(e)}if(t.description){let e=document.createElement("div");e.classList.add("text"),e.innerHTML=p.RichTextProcessor.wrapRichText(t.description),l.append(e)}if(d.append(l),t.photo&&!f){i.classList.add("photo");const s=t.photo.sizes[t.photo.sizes.length-1];s.w==s.h&&l.childElementCount?i.classList.add("is-square-photo"):s.h>s.w&&i.classList.add("is-vertical-photo"),_.wrapPhoto(t.photo,e,r,F.mediaSizes.active.webpage.width,F.mediaSizes.active.webpage.height,!1,D,this.lazyLoadQueue,this.getMiddleware())}n.append(d),a.prepend(b,n);break}case"messageMediaDocument":{let n=M.document;if(n.sticker){i.classList.add("sticker"),n.animated&&i.classList.add("sticker-animated");let e=i.classList.contains("emoji-big")?140:200;m.default.setAttachmentSize(n,t,e,e,!0),a.style.height=t.style.height,a.style.width=t.style.width,_.wrapSticker({doc:n,div:t,middleware:this.getMiddleware(),lazyLoadQueue:this.lazyLoadQueue,group:"chat",play:!0,loop:!0,emoji:i.classList.contains("emoji-big")?v:void 0,withThumb:!0});break}if("video"==n.type||"gif"==n.type||"round"==n.type){if(i.classList.add("hide-name","round"==n.type?"round":"video"),e.grouped_id)i.classList.add("is-album"),_.wrapAlbum({groupID:e.grouped_id,attachmentDiv:t,middleware:this.getMiddleware(),isOut:r,lazyLoadQueue:this.lazyLoadQueue});else{const s=!F.isAndroid&&!F.isApple&&"round"!=n.type;s&&i.classList.add("with-media-tail"),_.wrapVideo({doc:n,container:t,message:e,boxWidth:F.mediaSizes.active.regular.width,boxHeight:F.mediaSizes.active.regular.height,withTail:s,isOut:D,lazyLoadQueue:this.lazyLoadQueue,middleware:this.getMiddleware(),group:"chat"})}break}if("audio/ogg"==n.mime_type){let t=_.wrapDocument(n,!1,!1,e.mid);i.classList.remove("is-message-empty"),i.classList.add("bubble-audio"),u.append(t),s=!0;break}{let t=_.wrapDocument(n,!1,!1,e.mid);i.classList.remove("is-message-empty"),u.append(t),u.classList.add((n.type||"document")+"-message"),s=!0;break}}case"messageMediaContact":{let t=document.createElement("div");t.classList.add("contact"),t.dataset.peerID=""+M.user_id,u.classList.add("contact-message"),s=!0;let n=[];e.media.first_name&&n.push(p.RichTextProcessor.wrapEmojiText(e.media.first_name)),e.media.last_name&&n.push(p.RichTextProcessor.wrapEmojiText(e.media.last_name)),t.innerHTML=`\n <div class="contact-details">\n <div class="contact-name">${n.join(" ")}</div>\n <div class="contact-number">${e.media.phone_number?"+"+L.formatPhoneNumber(e.media.phone_number).formatted:"Unknown phone number"}</div>\n </div>`;let a=new T.default;a.setAttribute("peer",""+e.media.user_id),a.classList.add("contact-avatar"),t.prepend(a),i.classList.remove("is-message-empty"),u.append(t);break}case"messageMediaPoll":{i.classList.remove("is-message-empty");let t=_.wrapPoll(e.media.poll.id,e.mid);u.prepend(t);break}default:i.classList.remove("is-message-empty"),u.innerHTML="unrecognized media type: "+e.media._,u.append(b),this.log.warn("unrecognized media type:",e.media._,e)}s||a.append(t)}if(this.peerID<0&&!r||e.fwd_from||e.reply_to_mid){let t=c.default.getPeerTitle(e.fwdFromID||e.fromID);const s=!e.fromID&&e.fwd_from;if(e.fwd_from&&!e.fwd_from.from_id&&!e.fwd_from.channel_id&&(t=p.RichTextProcessor.wrapEmojiText(e.fwd_from.from_name),i.classList.add("hidden-profile")),e.fwdFromID||e.fwd_from){if(this.peerID!=this.myID&&i.classList.add("forwarded"),e.savedFrom){let t=document.createElement("div");t.classList.add("bubble-beside-button","goto-original","tgico-next"),a.append(t),i.dataset.savedFrom=e.savedFrom,i.classList.add("with-beside-button")}if(!i.classList.contains("sticker")){let i=document.createElement("div");i.classList.add("name"),i.dataset.peerID=e.fwdFromID,this.peerID==this.myID||s?(i.style.color=c.default.getPeerColorByID(e.fwdFromID,!1),i.innerHTML=t):i.innerHTML="Forwarded from "+t,a.append(i)}}else{if(e.reply_to_mid){let t=l.default.getMessage(e.reply_to_mid),s=c.default.getPeerTitle(t.fromID||t.fwdFromID,!0)||"";"messageEmpty"==t._&&(l.default.wrapSingleMessage(e.reply_to_mid),this.needUpdate.push({replyMid:e.reply_to_mid,mid:e.mid}),s="Loading..."),t.mid?i.setAttribute("data-original-mid",t.mid):i.setAttribute("data-original-mid",e.reply_to_mid),a.append(_.wrapReply(s,t.message||"",t)),i.classList.add("is-reply")}if(!i.classList.contains("sticker")&&o<0&&o!=e.fromID){let s=document.createElement("div");s.classList.add("name"),s.innerHTML=t,s.style.color=c.default.getPeerColorByID(e.fromID,!1),s.dataset.peerID=e.fromID,a.append(s)}else i.classList.add("hide-name")}if(!r&&this.peerID<0&&(!c.default.isChannel(this.peerID)||c.default.isMegagroup(this.peerID))||this.peerID==this.myID&&!e.reply_to_mid){let t=new T.default;t.classList.add("user-avatar"),!e.fromID&&e.fwd_from&&e.fwd_from.from_name&&t.setAttribute("peer-title",e.fwd_from.from_name),t.setAttribute("peer",""+((e.fwd_from&&this.peerID==this.myID||s?e.fwdFromID:e.fromID)||0)),t.update(),a.append(t)}}else i.classList.add("hide-name");return i.classList.add(D?"is-out":"is-in"),n?(this.bubbleGroups.addBubble(i,e,t),this.renderMessagesQueue(e,i,t)):this.bubbleGroups.updateGroupByMessageID(e.mid),i}performHistoryResult(e,t,s,i){e.length||(s?this.scrolledAllDown=!0:this.scrolledAll=!0),e=e.slice(),i&&e.unshift(i);let n=l.default.getDialogByPeerID(this.peerID)[0];if(n&&n.top_message)for(let t of e)if(t==n.top_message){this.scrolledAllDown=!0;break}return new Promise((s,i)=>{let n,a=(t?e.shift:e.pop).bind(e);for(this.scrollable.length>0&&t&&(this.messagesQueueOnRender=()=>{let e=this.scrollable.scrollTop;n=this.scrollable.scrollHeight-e,this.log("performHistoryResult: messagesQueueOnRender, scrollTop:",e,n),this.messagesQueueOnRender=void 0});e.length;){let e=l.default.getMessage(a());this.renderMessage(e,t,!0)}(this.messagesQueuePromise||Promise.resolve()).then(()=>{if(void 0!==n){const e=t?this.scrollable.scrollHeight-n:n;this.log("performHistoryResult: will set scrollTop",this.scrollable.scrollHeight,e,this.scrollable.container.clientHeight),F.touchSupport&&F.isApple&&(this.scrollable.container.style.overflow="hidden"),this.scrollable.scrollTop=e,F.touchSupport&&F.isApple&&(this.scrollable.container.style.overflow="")}s(!0)},i)}).then(()=>!0)}getHistory(e=0,t=!1,s=!1,i=0,n=!1){const a=this.peerID,o=m.default.windowH/38|0,r=Object.keys(this.bubbles).length>0?Math.max(40,o):o;let f=r;let c=0;s&&(c=f,t||(f=0,e+=1));const u=l.default.getHistory(this.peerID,e,f,c);let h,p;if(u instanceof Promise)p=!1,h=u.then(o=>(this.log("getHistory not cached result by maxID:",e,t,s,o,a,n),n?(this.scrollable.onScroll(),!0):this.peerID!=a?(this.log.warn("peer changed"),Promise.reject()):this.performHistoryResult(o.history||[],t,s,i)),e=>(this.log.error("getHistory error:",e),!1));else{if(n)return null;p=!0,this.log("getHistory cached result by maxID:",e,t,s,u,a,n),h=this.performHistoryResult(u.history||[],t,s,i)}return t?this.getHistoryTopPromise=h:this.getHistoryBottomPromise=h,h.finally(()=>{t?this.getHistoryTopPromise=void 0:this.getHistoryBottomPromise=void 0}),n?null:(h.then(()=>{let e;t?(this.loadedTopTimes++,this.loadedBottomTimes=Math.max(0,--this.loadedBottomTimes)):(this.loadedBottomTimes++,this.loadedTopTimes=Math.max(0,--this.loadedTopTimes)),(t&&this.loadedTopTimes>2||!t&&this.loadedBottomTimes>2)&&(e=d.getObjectKeysAndSort(this.bubbles));const s=2*r;this.log("getHistory: slice loadedTimes:",t,o,this.loadedTopTimes,this.loadedBottomTimes,e&&e.length,s),e&&e.length>s&&(t?(e=e.slice(s),this.scrolledAllDown=!1):(e=e.slice(0,e.length-s),this.scrolledAll=!1,this.log("getHistory: slice bottom: to:",e.length,f)),this.log("getHistory: will slice ids:",e,t),this.deleteMessagesByIDs(e)),this.setUnreadDelimiter(),setTimeout(()=>{this.loadMoreHistory(!0,!0),this.loadMoreHistory(!1,!0)},0)}),{cached:p,promise:h})}setUnreadDelimiter(){if(this.attachedUnreadBubble)return;let e=l.default.getDialogByPeerID(this.peerID)[0];if(!(null==e?void 0:e.unread_count))return;let t=e.read_inbox_max_id;if(t=Object.keys(this.bubbles).filter(e=>!this.bubbles[e].classList.contains("is-out")).map(e=>+e).sort((e,t)=>e-t).find(e=>e>t),t&&this.bubbles[t]){let s=this.bubbles[t];this.firstUnreadBubble&&this.firstUnreadBubble!=s&&(this.firstUnreadBubble.classList.remove("is-first-unread"),this.firstUnreadBubble=null),t!=e.top_message&&s.classList.add("is-first-unread"),this.firstUnreadBubble=s,this.attachedUnreadBubble=!0}}deleteEmptyDateGroups(){for(let e in this.dateMessages){let t=this.dateMessages[e];2==t.container.childElementCount&&(t.container.remove(),this.stickyIntersector.unobserve(t.container,t.div),delete this.dateMessages[e])}}setMutedState(e=!1){g.default.profileElements.notificationsCheckbox.checked=!e,g.default.profileElements.notificationsStatus.innerText=e?"Disabled":"Enabled",c.default.isBroadcast(this.peerID)?(this.btnMute.classList.remove("tgico-mute","tgico-unmute"),this.btnMute.classList.add(e?"tgico-unmute":"tgico-mute"),this.btnMute.style.display=""):this.btnMute.style.display="none";const t=this.menuButtons.mute;t.classList.remove("tgico-mute","tgico-unmute"),t.classList.add(e?"tgico-unmute":"tgico-mute");let s=t.firstElementChild;t.innerText=e?"Unmute":"Mute",s&&t.appendChild(s)}mutePeer(e){let t={_:"inputNotifyPeer",peer:c.default.getInputPeerByID(e)},s={_:"inputPeerNotifySettings",flags:0,mute_until:0},i=l.default.getDialogByPeerID(e)[0],n=!0;i&&i.notify_settings&&(n=i.notify_settings.mute_until>(Date.now()/1e3|0)),n?s.flags|=2:(s.flags|=4,s.mute_until=2147483647),r.default.invokeApi("account.updateNotifySettings",{peer:t,settings:s}).then(e=>{this.handleUpdate({_:"updateNotifySettings",peer:t,notify_settings:s})})}handleUpdate(e){switch(e._){case"updateUserTyping":case"updateChatUserTyping":{if(this.myID==e.user_id)return;var t="updateUserTyping"==e._?e.user_id:-e.chat_id;this.typingUsers[e.user_id]=t,f.default.hasUser(e.user_id)||e.chat_id&&w.default.hasChat(e.chat_id)&&!w.default.isChannel(e.chat_id)&&u.default.getChatFull(e.chat_id),f.default.forceUserOnline(e.user_id);let s=l.default.getDialogByPeerID(t)[0],i=this.peerID==t;this.typingTimeouts[t]?clearTimeout(this.typingTimeouts[t]):s&&(h.default.setTyping(s,f.default.getUser(e.user_id)),i&&this.setPeerStatus()),this.typingTimeouts[t]=setTimeout(()=>{this.typingTimeouts[t]=0,delete this.typingUsers[e.user_id],s&&h.default.unsetTyping(s),this.setPeerStatus()},6e3);break}case"updateNotifySettings":{let{peer:t,notify_settings:s}=e;t=t.peer;let i=c.default.getPeerID(t),n=l.default.getDialogByPeerID(i)[0];if(n&&(n.notify_settings=s,d.$rootScope.$broadcast("dialog_notify_settings",i)),i==this.peerID){let e=!!s.mute_until&&new Date(1e3*s.mute_until)>new Date;this.setMutedState(e)}break}}}}t.AppImManager=V;const Q=new V;t.default=Q},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppPhotosManager=void 0;const n=s(0),a=s(21),o=i(s(28)),r=s(47);let d=(()=>{class e{constructor(){this.photos={},this.documentThumbsCache={},this.windowW=0,this.windowH=0,window.addEventListener("resize",e=>{this.windowW=document.body.scrollWidth,this.windowH=document.body.scrollHeight}),this.windowW=document.body.scrollWidth,this.windowH=document.body.scrollHeight}savePhoto(e,t){return this.photos[e.id]?Object.assign(this.photos[e.id],e):(e.id?this.photos[e.id]=e:console.warn("no apiPhoto.id",e),e)}choosePhotoSize(e,t=0,s=0){window.devicePixelRatio>1&&(t*=2,s*=2);let i={_:"photoSizeEmpty"};const a=e.sizes||e.thumbs;if(a)for(const e of a){if(!e.w||!e.h)continue;i=e;const{w:a,h:o}=n.calcImageInBox(e.w,e.h,t,s);if(a==t||o==s)break}return i}getPreviewURLFromBytes(t,s=!1){let i,n;s?i=t instanceof Uint8Array?t:new Uint8Array(t):(i=e.jf.concat(t.slice(3),e.Df),i[164]=t[1],i[166]=t[2]),n=s?r.isSafari?"image/png":"image/webp":"image/jpeg";const a=new Blob([i],{type:n});return URL.createObjectURL(a)}getPreviewURLFromThumb(e,t=!1){var s;return null!==(s=e.url)&&void 0!==s?s:e.url=this.getPreviewURLFromBytes(e.bytes,t)}setAttachmentPreview(e,t,s=!1,i=!1){let n=this.getPreviewURLFromBytes(e,s);if(i){let e=new Image;return e.src=n,e.addEventListener("load",()=>{t.style.backgroundImage="url("+n+")"}),t}if(t instanceof HTMLImageElement)return t.src=n,t;{let e=new Image;return e.src=n,t.append(e),e}}setAttachmentSize(e,t,s,i,a=!1,o=!1){let r,d,f=this.choosePhotoSize(e,s,i),l=e.sizes||e.thumbs;e.downloaded&&"video"!=e.type&&"gif"!=e.type||a||!(null==l?void 0:l.length)||!l[0].bytes||o||this.setAttachmentPreview(l[0].bytes,t,a),"document"==e._?(r=e.w||512,d=e.h||512):(r=f.w||100,d=f.h||100);let{w:c,h:u}=n.calcImageInBox(r,d,s,i);return t instanceof SVGForeignObjectElement?(t.setAttributeNS(null,"width",""+c),t.setAttributeNS(null,"height",""+u)):(t.style.width=c+"px",t.style.height=u+"px"),f}getPhotoDownloadOptions(e,t){const s="document"==e._;if(!t||"photoSizeEmpty"==t._)throw new Error("photoSizeEmpty!");const i=t.size&&e.access_hash&&e.file_reference,n=i?{_:s?"inputDocumentFileLocation":"inputPhotoFileLocation",id:e.id,access_hash:e.access_hash,file_reference:e.file_reference,thumb_size:t.type}:t.location;return{dcID:e.dc_id,location:n,size:i?t.size:void 0}}preloadPhoto(e,t){const s=this.getPhoto(e);if(!t){const e=this.windowW,i=this.windowH;t=this.choosePhotoSize(s,e,i)}const i=this.getCacheContext(s);if(i.downloaded>=t.size&&i.url)return Promise.resolve();const n=this.getPhotoDownloadOptions(s,t),r=a.getFileNameByLocation(n.location);let d=o.default.getDownload(r);return d||(d=o.default.download(n),d.then(e=>((!i.downloaded||i.downloaded<e.size)&&(i.downloaded=e.size,i.url=URL.createObjectURL(e)),e)),d)}getCacheContext(e){return"document"==e._?this.getDocumentCachedThumb(e.id):e}getDocumentCachedThumb(e){var t;return null!==(t=this.documentThumbsCache[e])&&void 0!==t?t:this.documentThumbsCache[e]={downloaded:0,url:""}}getPhoto(e){return n.isObject(e)?e:this.photos[e]}getInput(e){return{_:"inputMediaPhoto",flags:0,id:{_:"inputPhoto",id:e.id,access_hash:e.access_hash,file_reference:e.file_reference},ttl_seconds:0}}savePhotoFile(e){const t=this.windowW,s=this.windowH,i=this.choosePhotoSize(e,t,s),n={_:"document"==e._?"inputDocumentFileLocation":"inputPhotoFileLocation",id:e.id,access_hash:e.access_hash,file_reference:e.file_reference,thumb_size:i.type};o.default.downloadToDisc({dcID:e.dc_id,location:n,size:i.size,fileName:"photo"+e.id+".jpg"},"photo"+e.id+".jpg")}}return e.jf=new Uint8Array(a.bytesFromHex("ffd8ffe000104a46494600010100000100010000ffdb004300281c1e231e19282321232d2b28303c64413c37373c7b585d4964918099968f808c8aa0b4e6c3a0aadaad8a8cc8ffcbdaeef5ffffff9bc1fffffffaffe6fdfff8ffdb0043012b2d2d3c353c76414176f8a58ca5f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8ffc00011080000000003012200021101031101ffc4001f0000010501010101010100000000000000000102030405060708090a0bffc400b5100002010303020403050504040000017d01020300041105122131410613516107227114328191a1082342b1c11552d1f02433627282090a161718191a25262728292a3435363738393a434445464748494a535455565758595a636465666768696a737475767778797a838485868788898a92939495969798999aa2a3a4a5a6a7a8a9aab2b3b4b5b6b7b8b9bac2c3c4c5c6c7c8c9cad2d3d4d5d6d7d8d9dae1e2e3e4e5e6e7e8e9eaf1f2f3f4f5f6f7f8f9faffc4001f0100030101010101010101010000000000000102030405060708090a0bffc400b51100020102040403040705040400010277000102031104052131061241510761711322328108144291a1b1c109233352f0156272d10a162434e125f11718191a262728292a35363738393a434445464748494a535455565758595a636465666768696a737475767778797a82838485868788898a92939495969798999aa2a3a4a5a6a7a8a9aab2b3b4b5b6b7b8b9bac2c3c4c5c6c7c8c9cad2d3d4d5d6d7d8d9dae2e3e4e5e6e7e8e9eaf2f3f4f5f6f7f8f9faffda000c03010002110311003f00")),e.Df=a.bytesFromHex("ffd9"),e})();t.AppPhotosManager=d,t.default=new d},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppSidebarLeft=void 0;const r=a(s(15)),d=s(0),f=o(s(12)),l=a(s(42)),c=s(4),u=o(s(5)),h=o(s(6)),p=o(s(41)),m=o(s(85)),g=o(s(87)),b=o(s(88)),v=o(s(89)),y=o(s(90)),w=o(s(91)),_=o(s(92)),S=o(s(93)),L=o(s(94)),M=o(s(60)),D=o(s(29)),E=o(s(40)),I=o(s(9));p.default;const C=new m.default,P=new g.default,k=new b.default,T=new v.default,A=new y.default,X=new w.default,x=new _.default,F=new S.default,B=new L.default;let R=(()=>{class e extends M.default{constructor(){super(document.getElementById("column-left"),{[e.SLIDERITEMSIDS.archived]:r.archivedTab,[e.SLIDERITEMSIDS.newChannel]:C,[e.SLIDERITEMSIDS.contacts]:k,[e.SLIDERITEMSIDS.addMembers]:P,[e.SLIDERITEMSIDS.newGroup]:T,[e.SLIDERITEMSIDS.settings]:A,[e.SLIDERITEMSIDS.editProfile]:X,[e.SLIDERITEMSIDS.chatFolders]:x,[e.SLIDERITEMSIDS.editFolder]:F,[e.SLIDERITEMSIDS.includedChats]:B}),this.buttons={},this.newButtons={},this.searchGroups={contacts:new l.SearchGroup("Chats","contacts"),globalContacts:new l.SearchGroup("Global Search","contacts"),messages:new l.SearchGroup("Global Search","messages"),people:new l.SearchGroup("People","contacts",!1,"search-group-people"),recent:new l.SearchGroup("Recent","contacts",!1,"search-group-recent")},this.recentSearch=[],this.recentSearchLoaded=!1,this.searchInput=new D.default("Telegram Search"),this.sidebarEl.querySelector(".item-main .sidebar-header").append(this.searchInput.container),this.toolsBtn=this.sidebarEl.querySelector(".sidebar-tools-button"),this.backBtn=this.sidebarEl.querySelector(".sidebar-back-button"),this.searchContainer=this.sidebarEl.querySelector("#search-container"),this.archivedTab=r.archivedTab,this.newChannelTab=C,this.addMembersTab=P,this.contactsTab=k,this.newGroupTab=T,this.settingsTab=A,this.editProfileTab=X,this.chatFoldersTab=x,this.editFolderTab=F,this.includedChatsTab=B,this.menuEl=this.toolsBtn.querySelector(".btn-menu"),this.newBtnMenu=this.sidebarEl.querySelector("#new-menu"),this.globalSearch=new l.default(this.searchContainer,this.searchInput,this.searchGroups,e=>{e||this.searchInput.value.trim()||(this.globalSearch.reset(),this.searchGroups.people.setActive(),this.renderRecentSearch())}),this.searchContainer.addEventListener("click",e=>{const t=d.findUpTag(e.target,"LI");if(!t)return;const s=d.findUpClassName(t,"search-group");if(!s||s.classList.contains("search-group-recent")||s.classList.contains("search-group-people"))return;const n=+t.getAttribute("data-peerID");if(this.recentSearch[0]!=n){this.recentSearch.findAndSplice(e=>e==n),this.recentSearch.unshift(n),this.recentSearch.length>20&&(this.recentSearch.length=20),this.renderRecentSearch(),E.default.pushToState("recentSearch",this.recentSearch);for(const e of this.recentSearch)E.default.pushPeer(e);i.style.display=""}},{capture:!0});let t=document.createElement("div");t.classList.add("search-group-scrollable"),t.append(this.searchGroups.people.list),this.searchGroups.people.container.append(t);new h.default(t,"x");c.parseMenuButtonsTo(this.buttons,this.menuEl.children),c.parseMenuButtonsTo(this.newButtons,this.newBtnMenu.firstElementChild.children),this.archivedCount=this.buttons.archived.querySelector(".archived-count"),this.buttons.saved.addEventListener("click",e=>{setTimeout(()=>{f.default.setPeer(f.default.myID)},0)}),this.buttons.archived.addEventListener("click",t=>{this.selectTab(e.SLIDERITEMSIDS.archived)}),this.buttons.contacts.addEventListener("click",e=>{this.contactsTab.openContacts()}),this.buttons.settings.addEventListener("click",t=>{this.settingsTab.fillElements(),this.selectTab(e.SLIDERITEMSIDS.settings)});let s=!0;this.searchInput.input.addEventListener("focus",e=>{this.toolsBtn.classList.remove("active"),this.backBtn.classList.add("active"),this.searchContainer.classList.remove("hide"),this.searchContainer.offsetWidth,this.searchContainer.classList.add("active"),s&&(this.searchGroups.people.setActive(),this.renderRecentSearch(),s=!1)}),this.backBtn.addEventListener("click",e=>{this.toolsBtn.classList.add("active"),this.backBtn.classList.remove("active"),this.searchContainer.classList.remove("active"),s=!0,setTimeout(()=>{this.searchContainer.classList.add("hide"),this.globalSearch.reset()},150)}),this.newButtons.channel.addEventListener("click",t=>{this.selectTab(e.SLIDERITEMSIDS.newChannel)}),[this.newButtons.group,this.buttons.newGroup].forEach(e=>{e.addEventListener("click",e=>{this.addMembersTab.init(0,"chat",!1,e=>{this.newGroupTab.init(e)})})}),d.$rootScope.$on("dialogs_archived_unread",e=>{this.archivedCount.innerText=""+e.detail.count}),u.default.getTopPeers().then(e=>{e.forEach(e=>{let{dialog:t,dom:s}=r.default.addDialog(e,this.searchGroups.people.list,!1,!0,!0);this.searchGroups.people.setActive()})}),this.renderRecentSearch();const i=this.recentSearchClearBtn=document.createElement("button");i.classList.add("btn-icon","tgico-close"),this.searchGroups.recent.nameEl.append(i),i.addEventListener("click",()=>{this.recentSearch=[],E.default.pushToState("recentSearch",this.recentSearch),this.renderRecentSearch(!1),i.style.display="none"})}renderRecentSearch(e=!0){E.default.getState().then(t=>{t&&!this.recentSearchLoaded&&Array.isArray(t.recentSearch)&&(this.recentSearch=t.recentSearch,this.recentSearchLoaded=!0),this.searchGroups.recent.list.innerHTML="",this.recentSearchClearBtn.style.display=this.recentSearch.length?"":"none",this.recentSearch.slice(0,20).forEach(e=>{let{dialog:t,dom:s}=r.default.addDialog(e,this.searchGroups.recent.list,!1,!0,!1,!0);s.lastMessageSpan.innerText=e>0?u.default.getUserStatusString(e):I.default.getChatMembersString(e)}),e&&this.searchGroups.recent.setActive()})}}return e.SLIDERITEMSIDS={archived:1,contacts:2,newChannel:3,addMembers:4,newGroup:5,settings:6,editProfile:7,chatFolders:8,editFolder:9,includedChats:10},e})();t.AppSidebarLeft=R;const O=new R;t.default=O},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppDialogsManager=t.archivedTab=t.AppArchivedTab=void 0;const a=s(0),o=n(s(12)),r=n(s(8)),d=n(s(7)),f=n(s(5)),l=s(3),c=s(4),u=n(s(6)),h=s(10),p=n(s(9)),m=n(s(41)),g=s(36),b=n(s(40)),v=s(1),y=s(26),w=s(19);class _{constructor(){this.element=document.getElementById("dialogs-contextmenu"),this.buttons={},this.onContextMenu=e=>{var t,s;let i=null;try{i=a.findUpTag(e.target,"LI")}catch(e){}if(!i)return;if(e instanceof MouseEvent&&e.preventDefault(),this.element.classList.contains("active"))return!1;e instanceof MouseEvent&&(e.cancelBubble=!0),this.filterID=M.filterID,this.selectedID=+i.getAttribute("data-peerID");const n=d.default.getDialogByPeerID(this.selectedID)[0],o=n.peerID!=a.$rootScope.myID;if(o){const e=this.buttons.archive,t=1==n.folder_id;e.classList.toggle("flip-icon",t),e.innerText=t?"Unarchive":"Archive",this.buttons.archive.style.display=""}else this.buttons.archive.style.display="none";{const e=this.buttons.pin,s=this.filterID>1?d.default.filtersStorage.filters[this.filterID].pinned_peers.includes(n.peerID):!!(null===(t=n.pFlags)||void 0===t?void 0:t.pinned);e.classList.toggle("flip-icon",s),e.innerText=s?"Unpin":"Pin"}if(o){const e=this.buttons.mute,t=n.notify_settings&&n.notify_settings.mute_until>(Date.now()/1e3|0);e.classList.toggle("flip-icon",t),e.innerText=t?"Unmute":"Mute",this.buttons.mute.style.display=""}else this.buttons.mute.style.display="none";{const e=this.buttons.unread,t=!(!(null===(s=n.pFlags)||void 0===s?void 0:s.unread_mark)&&!n.unread_count);e.classList.toggle("flip-icon",t),e.innerText=t?"Mark as Read":"Mark as Unread"}let f="";r.default.isMegagroup(this.selectedID)?(f="Leave",this.peerType="megagroup"):r.default.isChannel(this.selectedID)?(f="Leave",this.peerType="channel"):this.selectedID<0?(f="Delete",this.peerType="group"):(f="Delete",this.peerType=this.selectedID==a.$rootScope.myID?"saved":"chat"),this.buttons.delete.innerText=f,i.classList.add("menu-open"),c.positionMenu(e,this.element),c.openBtnMenu(this.element,()=>{i.classList.remove("menu-open")})},c.parseMenuButtonsTo(this.buttons,this.element.children),this.buttons.archive.addEventListener("click",()=>{let e=d.default.getDialogByPeerID(this.selectedID)[0];e&&d.default.editPeerFolders([e.peerID],+!e.folder_id)}),this.buttons.pin.addEventListener("click",()=>{d.default.toggleDialogPin(this.selectedID,this.filterID)}),this.buttons.mute.addEventListener("click",()=>{o.default.mutePeer(this.selectedID)}),this.buttons.unread.addEventListener("click",()=>{const e=d.default.getDialogByPeerID(this.selectedID)[0];e&&(e.unread_count?(d.default.readHistory(this.selectedID,e.top_message),d.default.markDialogUnread(this.selectedID,!0)):d.default.markDialogUnread(this.selectedID))}),this.buttons.delete.addEventListener("click",()=>{let e,t,s,i=r.default.getPeerTitle(this.selectedID,!1,!0),n=e=>{d.default.flushHistory(this.selectedID,e)},a=()=>{p.default.leaveChannel(-this.selectedID)};switch(this.peerType){case"channel":e="Leave Channel?",t="Are you sure you want to leave this channel?",s=[{text:"LEAVE "+i,isDanger:!0,callback:a}];break;case"megagroup":e="Leave Group?",t="Are you sure you want to leave this group?",s=[{text:"LEAVE "+i,isDanger:!0,callback:a}];break;case"chat":e="Delete Chat?",t=`Are you sure you want to delete chat with <b>${i}</b>?`,s=[{text:"DELETE FOR ME AND "+i,isDanger:!0,callback:()=>n(!1)},{text:"DELETE JUST FOR ME",isDanger:!0,callback:()=>n(!0)}];break;case"saved":e="Delete Saved Messages?",t="Are you sure you want to delete all your saved messages?",s=[{text:"DELETE SAVED MESSAGES",isDanger:!0,callback:()=>n(!1)}];break;case"group":e="Delete and leave Group?",t=`Are you sure you want to delete all message history and leave <b>${i}</b>?`,s=[{text:"DELETE AND LEAVE "+i,isDanger:!0,callback:()=>n(!0)}]}s.push({text:"CANCEL",isCancel:!0}),new g.PopupPeer("popup-delete-chat",{peerID:this.selectedID,title:e,description:t,buttons:s}).show()})}}class S{constructor(){this.container=document.getElementById("chats-archived-container"),this.chatList=document.getElementById("dialogs-archived"),this.scroll=null}init(){this.scroll=new u.default(this.container,"y","CLA",this.chatList,500),this.scroll.setVirtualContainer(this.chatList),this.scroll.onScrolledBottom=M.onChatsScroll,M.setListClickListener(this.chatList,null,!0),window.addEventListener("resize",()=>{setTimeout(M.onChatsScroll,0)})}onOpen(){this.init&&(this.init(),this.init=null),this.wasFilterID=M.filterID,M.scroll=this.scroll,M.filterID=1,M.onTabChange()}onOpenAfterTimeout(){M.chatLists[this.wasFilterID].innerHTML=""}onClose(){M.scroll=M._scroll,M.filterID=this.wasFilterID,M.onTabChange()}onCloseAfterTimeout(){this.chatList.innerHTML=""}}t.AppArchivedTab=S,t.archivedTab=new S;class L{constructor(){if(this._chatList=document.getElementById("dialogs"),this.chatList=this._chatList,this.doms={},this.lastActiveListElement=null,this.chatsContainer=document.getElementById("chats-container"),this.loadedAll=!1,this.scroll=null,this._scroll=null,this.log=h.logger("DIALOGS",h.LogLevels.log|h.LogLevels.error|h.LogLevels.warn|h.LogLevels.debug),this.contextMenu=new _,this.chatLists={0:this.chatList,1:t.archivedTab.chatList},this.filterID=0,this.folders={menu:document.getElementById("folders-tabs"),menuScrollContainer:null,container:document.getElementById("folders-container")},this.filtersRendered={},this.onTabChange=()=>{this.doms={},this.loadedAll=!1,this.lastActiveListElement=null,this.chatList=this.chatLists[this.filterID],this.loadDialogs(this.filterID)},this.onChatsScroll=()=>{this.loadedAll||this.loadDialogsPromise||(this.log("onChatsScroll"),this.loadDialogs(this.filterID))},this.chatsPreloader=c.putPreloader(null,!0),this.allUnreadCount=this.folders.menu.querySelector(".unread-count"),this.folders.menuScrollContainer=this.folders.menu.parentElement,this.scroll=this._scroll=new u.default(this.chatsContainer,"y","CL",this.chatList,500),this.scroll.onScrolledBottom=this.onChatsScroll,this.scroll.setVirtualContainer(this.chatList),v.touchSupport&&v.isSafari){let e,t,s;const i=this.scroll.container;i.addEventListener("touchstart",n=>{e=i.scrollTop>0,t=i.scrollTop<i.scrollHeight-i.clientHeight,s=n.pageY}),i.addEventListener("touchmove",i=>{var n=i.pageY>s,a=i.pageY<s;s=i.pageY,n&&e||a&&t?i.stopPropagation():(n||a)&&i.preventDefault()})}this.setListClickListener(this.chatList,null,!0),a.$rootScope.$on("user_update",e=>{let t=e.detail,s=f.default.getUser(t),i=d.default.getDialogByPeerID(s.id)[0];if(i&&!f.default.isBot(i.peerID)&&i.peerID!=a.$rootScope.myID){let e=s.status&&"userStatusOnline"==s.status._,t=this.getDialogDom(i.peerID);t&&(e?t.avatarEl.classList.add("is-online"):t.avatarEl.classList.remove("is-online"))}a.$rootScope.selectedPeerID==s.id&&o.default.setPeerStatus()}),a.$rootScope.$on("dialog_top",e=>{let t=e.detail;this.setLastMessage(t),this.setDialogPosition(t),this.setFiltersUnreadCount()}),a.$rootScope.$on("dialog_flush",e=>{let t=e.detail.peerID,s=d.default.getDialogByPeerID(t)[0];s&&(this.setLastMessage(s),this.validateForFilter(),this.setFiltersUnreadCount())}),a.$rootScope.$on("dialogs_multiupdate",e=>{const t=e.detail;for(const e in t){const s=t[e];this.updateDialog(s)}this.validateForFilter(),this.setFiltersUnreadCount()}),a.$rootScope.$on("dialog_drop",e=>{let{peerID:t,dialog:s}=e.detail,i=this.getDialogDom(t);i&&(i.listEl.remove(),delete this.doms[t],this.scroll.reorder()),this.setFiltersUnreadCount()}),a.$rootScope.$on("dialog_unread",e=>{let t=e.detail,s=d.default.getDialogByPeerID(t.peerID)[0];s&&(this.setUnreadMessages(s),s.peerID==a.$rootScope.selectedPeerID&&o.default.updateUnreadByDialog(s),this.validateForFilter(),this.setFiltersUnreadCount())}),a.$rootScope.$on("dialog_notify_settings",e=>{const t=d.default.getDialogByPeerID(e.detail)[0];t&&this.setUnreadMessages(t)}),a.$rootScope.$on("peer_changed",e=>{let t=e.detail,s=this.lastActiveListElement&&+this.lastActiveListElement.getAttribute("data-peerID");if(this.lastActiveListElement&&s!=t&&(this.lastActiveListElement.classList.remove("active"),this.lastActiveListElement=null),s!=t){let e=this.getDialogDom(t);e&&(this.lastActiveListElement=e.listEl,e.listEl.classList.add("active"))}}),a.$rootScope.$on("filter_update",e=>{const t=e.detail;if(!this.filtersRendered[t.id])return void this.addFilter(t);if(t.id==this.filterID){const e=d.default.dialogsStorage.getFolder(t.id);this.validateForFilter();for(let t=0,s=e.length;t<s;++t){const s=e[t];this.updateDialog(s)}this.setFiltersUnreadCount()}this.filtersRendered[t.id].title.innerHTML=l.RichTextProcessor.wrapEmojiText(t.title)}),a.$rootScope.$on("filter_delete",e=>{const t=e.detail,s=this.filtersRendered[t.id];s&&(this.folders.menu.firstElementChild.children[0].click(),s.container.remove(),s.menu.remove(),delete this.chatLists[t.id],delete this.filtersRendered[t.id],Object.keys(this.filtersRendered).length||this.folders.menuScrollContainer.classList.add("hide"))}),new u.default(this.folders.menuScrollContainer,"x"),this.chatsContainer.prepend(this.folders.menuScrollContainer);y.horizontalMenu(this.folders.menu,this.folders.container,(e,t)=>{e=+t.dataset.filterID||0,this.filterID!=e&&(this.chatLists[e].innerHTML="",this.scroll.setVirtualContainer(this.chatLists[e]),this.filterID=e,this.onTabChange())},()=>{for(const e in this.chatLists)+e!=this.filterID&&(this.chatLists[e].innerHTML="")});this.folders.menu.firstElementChild.firstElementChild.click(),b.default.loadSavedState().then(()=>d.default.filtersStorage.getDialogFilters()).then(e=>{for(const t in e)this.addFilter(e[t]);return this.loadDialogs(this.filterID)}).then(e=>{this.loadDialogs(1)})}updateDialog(e){e&&(this.doms.hasOwnProperty(e.peerID)||this.addDialog(e),this.getDialogDom(e.peerID)&&(this.setLastMessage(e),this.setDialogPosition(e)))}setFilterUnreadCount(e,t){var s;const i=0==e?this.allUnreadCount:null===(s=this.filtersRendered[e])||void 0===s?void 0:s.unread;if(!i)return;const n=(t=t||d.default.dialogsStorage.getFolder(e)).reduce((e,t)=>e+ +!!t.unread_count,0);i.innerText=n?""+n:""}setFiltersUnreadCount(){for(const e in this.filtersRendered)this.setFilterUnreadCount(+e);this.setFilterUnreadCount(0)}validateForFilter(){const e=d.default.dialogsStorage.getFolder(this.filterID);let t=!1;for(const s in this.doms){const i=+s;if(-1===e.findIndex(e=>e.peerID==i)){const e=this.doms[i].listEl;e.remove(),t=!0,this.lastActiveListElement==e&&(this.lastActiveListElement=null)}}t&&this.scroll.reorder()}addFilter(e){if(this.filtersRendered[e.id])return;const t=document.createElement("li"),s=document.createElement("span"),i=document.createElement("span");i.innerHTML=l.RichTextProcessor.wrapEmojiText(e.title);const n=document.createElement("span");n.classList.add("unread-count");const o=document.createElement("i");s.append(i,n,o),t.append(s),w.ripple(t);const r=this.folders.menu.firstElementChild;a.positionElementByIndex(t,r,e.orderIndex+1);const d=document.createElement("ul"),f=document.createElement("div");f.append(d),f.dataset.filterID=""+e.id,a.positionElementByIndex(f,this.folders.container,e.orderIndex+1),this.chatLists[e.id]=d,this.setListClickListener(d,null,!0),this.showFiltersTimeout||(this.showFiltersTimeout=setTimeout(()=>{this.showFiltersTimeout=0,this.folders.menuScrollContainer.classList.remove("hide"),this.setFiltersUnreadCount()},0)),this.filtersRendered[e.id]={menu:t,container:f,unread:n,title:i}}loadDialogs(e){return i(this,void 0,void 0,(function*(){if(this.loadDialogsPromise)return this.loadDialogsPromise;if(!this.chatList.childElementCount){this.chatList.parentElement.append(this.chatsPreloader)}const t=d.default.dialogsStorage.getFolder(e);let s=0;for(let e=t.length-1;e>=0;--e){const i=t[e];if(this.getDialogDom(i.peerID)){s=i.index;break}}try{const t=50,i=(this.filterID>1?f.default.getContacts():Promise.resolve()).then(()=>d.default.getConversations("",s,t,e));this.loadDialogsPromise=i;const n=yield i;n&&n.dialogs&&n.dialogs.length&&n.dialogs.forEach(e=>{this.addDialog(e)}),n.dialogs.length&&this.chatList.childElementCount!=n.count||(this.loadedAll=!0),this.log.debug("getDialogs "+t+" dialogs by offset:",s,n,this.chatList.childElementCount),this.scroll.onScroll()}catch(e){this.log.error(e)}this.chatsPreloader.remove(),this.loadDialogsPromise=void 0}))}setListClickListener(e,t,s=!1){e.addEventListener("click",e=>{a.cancelEvent(e),this.log("dialogs click list");let s=e.target,i=s.classList.contains("rp")?s:a.findUpClassName(s,"rp");if(!i)return;i=i.parentElement;let n,r=this.lastActiveListElement==i;if(this.lastActiveListElement&&!r&&this.lastActiveListElement.classList.remove("active"),i){t&&t();let e=+i.getAttribute("data-peerID"),s=+i.dataset.mid||void 0;r||(i.classList.add("active"),this.lastActiveListElement=i),n=o.default.setPeer(e,s)}else n=o.default.setPeer(0)},{capture:!0}),s&&c.attachContextMenuListener(e,this.contextMenu.onContextMenu)}setDialogPosition(e,t){const s=this.getDialogDom(e.peerID);s&&(void 0===t&&(t=d.default.dialogsStorage.getDialog(e.peerID,this.filterID)[1]),a.positionElementByIndex(s.listEl,this.chatList,t)&&(this.scroll.reorder(),this.log.debug("setDialogPosition:",e,s,t)))}setLastMessage(e,t,s,i){if(t||(t=d.default.getMessage(e.top_message)),!s&&!(s=this.getDialogDom(e.peerID)))return;if("messageEmpty"==t._||"messageService"==t._&&!t.rReply)return s.lastMessageSpan.innerHTML="",s.lastTimeSpan.innerHTML="",void delete s.listEl.dataset.mid;let n=e.peer,o=e.peerID;if(i&&t.message){let e,n=d.default.getRichReplyText(t,""),o=t.message,r=l.RichTextProcessor.parseEntities(o.replace(/\n/g," "),{noLinebreakers:!0}),f=new RegExp(a.escapeRegExp(i),"gi");r||(r=[]);let c=!1;for(;null!==(e=f.exec(o));)r.push({_:"messageEntityHighlight",length:i.length,offset:e.index}),c=!0;c&&r.sort((e,t)=>e.offset-t.offset);let u=l.RichTextProcessor.wrapRichText(o,{noLinebreakers:!0,entities:r,noTextFormat:!0});s.lastMessageSpan.innerHTML=n+u}else t.deleted?s.lastMessageSpan.innerHTML="":s.lastMessageSpan.innerHTML=t.rReply;if("peerUser"!=n._&&o!=-t.from_id){let e=f.default.getUser(t.from_id);if(e&&e.id){let t=document.createElement("b"),i="";i=e.id==a.$rootScope.myID?"You":e.first_name||e.last_name||e.username,t.innerHTML=l.RichTextProcessor.wrapRichText(i,{noLinebreakers:!0})+": ",s.lastMessageSpan.prepend(t)}}if(t.deleted)s.lastTimeSpan.innerHTML="";else{let e="",i=t.date,n=Date.now()/1e3,a=new Date(1e3*t.date);if(n-i<86400)e=("0"+a.getHours()).slice(-2)+":"+("0"+a.getMinutes()).slice(-2);else if(n-i<604800){e=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"][new Date(1e3*i).getDay()]}else{e=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][a.getMonth()]+" "+("0"+a.getDate()).slice(-2)}s.lastTimeSpan.innerHTML=e}this.doms[o]==s?this.setUnreadMessages(e):s.listEl.dataset.mid=t.mid}setUnreadMessages(e){var t;const s=this.getDialogDom(e.peerID);if(1==e.folder_id&&this.accumulateArchivedUnread(),!s)return;const i=1e3*(null===(t=e.notify_settings)||void 0===t?void 0:t.mute_until)>Date.now();s.listEl.classList.toggle("is-muted",i);const n=d.default.getMessage(e.top_message);if("messageEmpty"!=n._&&!n.deleted&&n.from_id==a.$rootScope.myID&&n.peerID!=a.$rootScope.myID&&e.read_outbox_max_id){n.pFlags&&n.pFlags.unread?(s.statusSpan.classList.remove("tgico-checks"),s.statusSpan.classList.add("tgico-check")):(s.statusSpan.classList.remove("tgico-check"),s.statusSpan.classList.add("tgico-checks"))}else s.statusSpan.classList.remove("tgico-check","tgico-checks");s.unreadMessagesSpan.innerText="",s.unreadMessagesSpan.classList.remove("tgico-pinnedchat");const o=d.default.filtersStorage.filters[this.filterID];let r;r=o?-1!==o.pinned_peers.findIndex(t=>t==e.peerID):!!e.pFlags.pinned,e.unread_count||e.pFlags.unread_mark?(s.unreadMessagesSpan.innerText=""+(e.unread_count||" "),s.unreadMessagesSpan.classList.add(i?"unread-muted":"unread")):r&&(s.unreadMessagesSpan.classList.remove("unread","unread-muted"),s.unreadMessagesSpan.classList.add("tgico-pinnedchat"))}accumulateArchivedUnread(){this.accumulateArchivedTimeout||(this.accumulateArchivedTimeout=setTimeout(()=>{this.accumulateArchivedTimeout=0;const e=d.default.dialogsStorage.getFolder(1).reduce((e,t)=>e+t.unread_count,0);a.$rootScope.$broadcast("dialogs_archived_unread",{count:e})},0))}getDialogDom(e){return this.doms[e]}addDialog(e,t,s=!0,i=!0,n=!1,o=!0){var l;let c;if("number"==typeof e){let t=d.default.getDialogByPeerID(e)[0];t||(t={peerID:e,pFlags:{}}),c=t}else c=e;let u=c.peerID;if(!t){if(this.doms[u])return;const e=d.default.filtersStorage.filters[this.filterID];if(e&&!d.default.filtersStorage.testDialogForFilter(c,e)||!e&&this.filterID!=c.folder_id)return}let h=r.default.getPeerTitle(u,!1,n),g=new m.default;if(g.setAttribute("dialog",o?"1":"0"),g.setAttribute("peer",""+u),g.classList.add("dialog-avatar"),s&&u!=a.$rootScope.myID&&c.peer){switch(c.peer._){case"peerUser":let e=f.default.getUser(u);e.status&&"userStatusOnline"==e.status._&&g.classList.add("is-online")}}let b=document.createElement("div");b.classList.add("user-caption");let v=document.createElement("span");if(v.classList.add("user-title"),u==a.$rootScope.myID&&o&&(h=n?"Saved":"Saved Messages"),v.innerHTML=h,!t){let e;if(u<0?(v.classList.add("tgico"),e=p.default.getChat(-u)):e=f.default.getUser(u),null===(l=null==e?void 0:e.pFlags)||void 0===l?void 0:l.verified){v.classList.add("is-verified");const e=document.createElement("i");e.classList.add("verified-icon"),v.append(e)}}let y=document.createElement("span");y.classList.add("user-last-message");let _=document.createElement("div");_.classList.add("rp"),_.append(g,b),i&&w.ripple(_);let S=document.createElement("li");S.append(_),S.setAttribute("data-peerID",""+u);let L=document.createElement("span");L.classList.add("message-status");let M=document.createElement("span");M.classList.add("message-time");let D=document.createElement("span"),E=document.createElement("p"),I=document.createElement("span");I.append(L,M),E.append(v,I);let C=document.createElement("p");C.append(y,D),b.append(E,C);let P={avatarEl:g,captionDiv:b,titleSpan:v,statusSpan:L,lastTimeSpan:M,unreadMessagesSpan:D,lastMessageSpan:y,containerEl:_,listEl:S};return t?t.append(S):(this.scroll.append(S),this.doms[c.peerID]=P,a.$rootScope.selectedPeerID==u&&(S.classList.add("active"),this.lastActiveListElement=S),this.setLastMessage(c)),{dom:P,dialog:c}}setTyping(e,t){const s=this.getDialogDom(e.peerID);if(!s)return;let i="";if(e.peerID<0){let e=t.rFirstName||t.username;if(!e)return;i=e+" "}const n=document.createElement("i");i+="typing...",n.innerHTML=i,s.lastMessageSpan.innerHTML="",s.lastMessageSpan.append(n),s.lastMessageSpan.classList.add("user-typing")}unsetTyping(e){const t=this.getDialogDom(e.peerID);t&&(t.lastMessageSpan.classList.remove("user-typing"),this.setLastMessage(e,null,t))}}t.AppDialogsManager=L;const M=new L;t.default=M},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=s(30),n=s(70);class a{constructor(){this.keyPrefix="",this.noPrefix=!1,this.cache={},this.useLs=!0}storageGetPrefix(){return this.noPrefix?(this.noPrefix=!1,""):this.keyPrefix}get(e,t){var s=!1;Array.isArray(e)||(t=(e=Array.prototype.slice.call(arguments)).pop(),s=1==e.length);var i,n,a,o=[],r=!0,d=this.storageGetPrefix();for(n=0;n<e.length;n++)if("xt_"!=(a=e[n]=d+e[n]).substr(0,3)&&void 0!==this.cache[a])o.push(this.cache[a]);else if(this.useLs){try{i=localStorage.getItem(a)}catch(e){this.useLs=!1}try{i=null!=i&&JSON.parse(i)}catch(e){i=!1}o.push(this.cache[a]=i)}else r=!1;if(r)return t(s?o[0]:o)}set(e,t){var s,i,n={},a=this.storageGetPrefix();for(s in e)if(e.hasOwnProperty(s))if(i=e[s],s=a+s,this.cache[s]=i,i=JSON.stringify(i,(e,t)=>{if("downloaded"!=e&&("url"!=e||0!==t.indexOf("blob:")))return t}),this.useLs)try{localStorage.setItem(s,i)}catch(e){this.useLs=!1}else n[s]=i;this.useLs&&t&&t()}remove(e,t){Array.isArray(e)||"function"==typeof(e=Array.prototype.slice.call(arguments))[e.length-1]&&(t=e.pop());var s,i,n=this.storageGetPrefix();for(s=0;s<e.length;s++)if(i=e[s]=n+e[s],delete this.cache[i],this.useLs)try{localStorage.removeItem(i)}catch(e){this.useLs=!1}t&&t()}clear(e){if(this.useLs)try{localStorage.clear()}catch(e){this.useLs=!1}this.cache={},e()}}t.default=new class{constructor(){this.taskID=0,this.tasks={},this.log=(...e)=>{},i.Modes.test&&this.setPrefix("t_"),n.isWorker||(this.configStorage=new a)}setPrefix(e){this.configStorage&&(this.configStorage.keyPrefix=e)}noPrefix(){this.configStorage&&(this.configStorage.noPrefix=!0)}finishTask(e,t){this.log("finishTask:",e,t,Object.keys(this.tasks)),this.tasks.hasOwnProperty(e)?(this.tasks[e](t),delete this.tasks[e]):this.log("no such task:",e,t)}proxy(e,...t){return new Promise((s,i)=>{if(n.isWorker){const i=this.taskID++;this.tasks[i]=s;const a={useLs:!0,task:e,taskID:i,args:t};n.notifySomeone(a)}else{let i=Array.prototype.slice.call(t);i.push(e=>{s(e)}),this.configStorage[e].apply(this.configStorage,i)}})}get(...e){return this.proxy("get",...e)}set(...e){return this.proxy("set",...e)}remove(...e){return this.proxy("remove",...e)}clear(...e){return this.proxy("clear",...e)}}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RLottiePlayer=void 0;const a=s(1),o=s(10),r=n(s(18)),d=n(s(2)),f=s(0);let l=e=>Math.round(255*Math.min(Math.max(e,0),1)),c=(()=>{class e{constructor({el:t,worker:s,options:i}){this.reqId=0,this.width=0,this.height=0,this.listeners={},this.listenerResults={},this.paused=!0,this.direction=1,this.speed=1,this.autoplay=!0,this.loop=!0,this.group="",this.frames={},this.cachingDelta=0,this.reqId=++e.reqId,this.el=t,this.worker=s;for(let e in i)this.hasOwnProperty(e)&&(this[e]=i[e]);const n=window.devicePixelRatio;n>1&&(i.needUpscale?(this.width=Math.round(this.width*n),this.height=Math.round(this.height*n)):n>1&&this.width>100&&this.height>100&&(a.isApple||!a.mediaSizes.isMobile?(this.width=Math.round(this.width*n),this.height=Math.round(this.height*n)):n>2.5&&(this.width=Math.round(this.width*(n-1.5)),this.height=Math.round(this.height*(n-1.5))))),i.noCache||(a.isApple&&this.width>100&&this.height>100?this.cachingDelta=2:this.width<100&&this.height<100?this.cachingDelta=1/0:this.cachingDelta=4),this.canvas=document.createElement("canvas"),this.canvas.classList.add("rlottie"),this.canvas.width=this.width,this.canvas.height=this.height,this.context=this.canvas.getContext("2d"),this.clamped=new Uint8ClampedArray(this.width*this.height*4),this.imageData=new ImageData(this.width,this.height)}clearCache(){this.frames={}}addListener(e,t,s){var i;(null!==(i=this.listeners[e])&&void 0!==i?i:this.listeners[e]=[]).push({callback:t,once:s}),this.listenerResults.hasOwnProperty(e)&&(t(this.listenerResults[e]),s&&this.removeListener(e,t))}removeListener(e,t){this.listeners[e]&&this.listeners[e].findAndSplice(e=>e.callback==t)}setListenerResult(e,t){this.listenerResults[e]=t,this.listeners[e]&&this.listeners[e].forEach(s=>{s.callback(t),s.once&&this.removeListener(e,s.callback)})}sendQuery(e,...t){this.worker.sendQuery(e,this.reqId,...t)}loadFromData(e){this.sendQuery("loadFromData",e,this.width,this.height,{paused:this.paused,direction:this.direction,speed:this.speed})}play(){this.paused&&(this.paused=!1,this.setMainLoop())}pause(){this.paused||(this.paused=!0,clearTimeout(this.rafId))}stop(e=!0){this.pause(),this.curFrame=1==this.direction?0:this.frameCount,e&&this.requestFrame(this.curFrame)}restart(){this.stop(!1),this.play()}setSpeed(e){this.speed=e,this.paused||this.setMainLoop()}setDirection(e){this.direction=e,this.paused||this.setMainLoop()}remove(){h.onDestroy(this.reqId),this.pause(),this.sendQuery("destroy")}renderFrame2(e,t){try{this.imageData.data.set(e),this.context.putImageData(this.imageData,0,0)}catch(e){return console.error("RLottiePlayer renderFrame error:",e,this.width,this.height),this.autoplay=!1,void this.pause()}this.setListenerResult("enterFrame",t)}renderFrame(e,t){if(this.cachingDelta&&(t%this.cachingDelta||!t)&&!this.frames[t]&&(this.frames[t]=new Uint8ClampedArray(e)),this.frInterval){const s=Date.now()-this.frThen;if(s<0)return this.rafId&&clearTimeout(this.rafId),this.rafId=setTimeout(()=>{this.renderFrame2(e,t)},this.frInterval>-s?-s%this.frInterval:this.frInterval)}this.renderFrame2(e,t)}requestFrame(e){this.frames[e]?this.renderFrame(this.frames[e],e):a.isSafari?this.sendQuery("renderFrame",e):(this.clamped.length||(this.clamped=new Uint8ClampedArray(this.width*this.height*4)),this.sendQuery("renderFrame",e,this.clamped))}mainLoopForwards(){if(this.requestFrame(this.curFrame++),this.curFrame>=this.frameCount){if(!this.loop)return this.pause(),!1;this.curFrame=0}return!0}mainLoopBackwards(){if(this.requestFrame(this.curFrame--),this.curFrame<0){if(!this.loop)return this.pause(),!1;this.curFrame=this.frameCount-1}return!0}setMainLoop(){clearTimeout(this.rafId),this.frInterval=1e3/this.fps/this.speed,this.frThen=Date.now()-this.frInterval;const e=(1==this.direction?this.mainLoopForwards:this.mainLoopBackwards).bind(this);this.currentMethod=e,this.frameListener&&this.listenerResults.hasOwnProperty("enterFrame")&&this.frameListener()}onLoad(e,t){return i(this,void 0,void 0,(function*(){this.curFrame=1==this.direction?0:e-1,this.frameCount=e,this.fps=t,this.frInterval=1e3/this.fps/this.speed,this.frThen=Date.now()-this.frInterval,this.requestFrame(0),this.setListenerResult("ready"),this.addListener("enterFrame",()=>{this.setListenerResult("firstFrame"),this.el.appendChild(this.canvas),this.frameListener=()=>{if(this.paused)return;const e=Date.now();this.frThen=e+this.frInterval;this.currentMethod()||this.loop||!this.autoplay||(this.autoplay=!1)},this.addListener("enterFrame",this.frameListener)},!0)}))}}return e.reqId=0,e})();t.RLottiePlayer=c;class u{constructor(e,t=(()=>{}),s){this.defaultListener=t,this.listeners={},this.worker=new Worker(e),s&&(this.worker.onerror=s),this.worker.onmessage=e=>{e.data instanceof Object&&e.data.hasOwnProperty("queryMethodListener")&&e.data.hasOwnProperty("queryMethodArguments")?this.listeners[e.data.queryMethodListener](...e.data.queryMethodArguments):this.defaultListener.call(this,e.data)}}postMessage(e){this.worker.postMessage(e)}terminate(){this.worker.terminate()}addListener(e,t){this.listeners[e]=t}removeListener(e){delete this.listeners[e]}sendQuery(e,...t){t=Array.prototype.slice.call(arguments,1);if(a.isSafari)this.worker.postMessage({queryMethod:e,queryMethodArguments:t});else{for(var s=[],i=0;i<t.length;i++)t[i]instanceof ArrayBuffer&&s.push(t[i]),t[i].buffer&&t[i].buffer instanceof ArrayBuffer&&s.push(t[i].buffer);this.worker.postMessage({queryMethod:e,queryMethodArguments:t},s)}}}const h=new((()=>{class e{constructor(){this.loaded=!1,this.workersLimit=4,this.players={},this.workers=[],this.curWorkerNum=0,this.log=o.logger("LOTTIE",o.LogLevels.error)}getAnimation(e){for(let t in this.players)if(this.players[t].el==e)return this.players[t];return null}loadLottieWorkers(){if("undefined"==typeof WebAssembly)return Promise.reject();if(this.loadPromise)return this.loadPromise;const e=this.onFrame.bind(this),t=this.onPlayerLoaded.bind(this);return this.loadPromise=new Promise((s,i)=>{let n=this.workersLimit;for(let i=0;i<this.workersLimit;++i){const a=this.workers[i]=new u("rlottie.worker.js");a.addListener("ready",()=>{this.log("worker #"+i+" ready"),a.addListener("frame",e),a.addListener("loaded",t),--n,n||(this.log("workers ready"),s(),this.loaded=!0)})}})}applyReplacements(t,s){const i=e.COLORREPLACEMENTS[Math.max(s-1,0)],n=e=>{for(let t of e){switch(t.ty){case"st":case"fl":let e=t.c.k,s=l(e[2])|l(e[1])<<8|l(e[0])<<16,n=i.find(e=>e[0]==s);n&&(e[0]=(n[1]>>16&255)/255,e[1]=(n[1]>>8&255)/255,e[2]=(255&n[1])/255)}t.hasOwnProperty("it")&&n(t.it)}};for(let e of t.layers)if(e.shapes)for(let t of e.shapes)n(t.it)}loadAnimationFromURL(e,t){return this.loaded||this.loadLottieWorkers(),fetch(t).then(e=>e.arrayBuffer()).then(e=>d.default.gzipUncompress(e,!0)).then(t=>this.loadAnimationWorker(Object.assign(e,{animationData:JSON.parse(t),needUpscale:!0})))}loadAnimationWorker(e,t="",s=-1){return i(this,void 0,void 0,(function*(){if(s>=1&&s<=5&&(e.animationData=f.copy(e.animationData),this.applyReplacements(e.animationData,s)),this.loaded||(yield this.loadLottieWorkers()),e.width&&e.height||(e.width=parseInt(e.container.style.width),e.height=parseInt(e.container.style.height)),!e.width||!e.height)throw new Error("No size for sticker!");e.group=t;const i=this.initPlayer(e.container,e);return r.default.addAnimation(i,t),i}))}onPlayerLoaded(e,t,s){const i=this.players[e];i?(this.log.debug("onPlayerLoaded"),i.onLoad(t,s)):this.log.warn("onPlayerLoaded on destroyed player:",e,t)}onFrame(e,t,s){const i=this.players[e];i?(i.clamped=s,i.renderFrame(s,t)):this.log.warn("onFrame on destroyed player:",e,t)}onDestroy(e){delete this.players[e]}destroyWorkers(){this.workers.forEach((e,t)=>{e.terminate(),this.log("worker #"+t+" terminated")}),this.log("workers destroyed"),this.workers.length=0}initPlayer(e,t){const s=new c({el:e,worker:this.workers[this.curWorkerNum++],options:t});return this.players[s.reqId]=s,this.curWorkerNum>=this.workers.length&&(this.curWorkerNum=0),s.loadFromData(t.animationData),s}}return e.COLORREPLACEMENTS=[[[16219713,13275258],[16757049,15582629],[16765248,16245699],[16768889,16510934]],[[16219713,11172960],[16757049,13150599],[16765248,14534815],[16768889,15128242]],[[16219713,9199944],[16757049,11371874],[16765248,12885622],[16768889,13939080]],[[16219713,7224364],[16757049,9591348],[16765248,10579526],[16768889,11303506]],[[16219713,2694162],[16757049,4663842],[16765248,5716784],[16768889,6834492]]],e})());t.default=h},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnimationIntersector=void 0;const i=s(0),n=s(17);class a{constructor(){this.visible=new Set,this.byGroups={},this.lockedGroups={},this.intersectionLockedGroups={},this.observer=new IntersectionObserver(e=>{if(!i.$rootScope.idle.isIDLE)for(const t of e){const e=t.target;for(const s in this.byGroups){if(this.intersectionLockedGroups[s])continue;const i=this.byGroups[s].find(t=>t.el==e);if(i){t.isIntersecting?(this.visible.add(i),this.checkAnimation(i,!1)):(this.visible.delete(i),this.checkAnimation(i,!0),i.animation instanceof n.RLottiePlayer&&i.animation.clearCache());break}}}})}getAnimations(e){const t=[];for(const s in this.byGroups)for(const i of this.byGroups[s])i.el==e&&t.push(i);return t}addAnimation(e,t=""){var s;const i={el:e instanceof n.RLottiePlayer?e.el:e,animation:e,group:t};(null!==(s=this.byGroups[t])&&void 0!==s?s:this.byGroups[t]=[]).push(i),this.observer.observe(i.el)}checkAnimations(e,t,s=!1){if(i.$rootScope.idle.isIDLE)return;const n=t?[t]:Object.keys(this.byGroups);t&&!this.byGroups[t]&&(this.byGroups[t]=[]);for(const t of n){this.byGroups[t].forEach(t=>{this.checkAnimation(t,e,s)})}}checkAnimation(e,t=!1,s=!1){const{el:n,animation:a,group:o}=e;if(s||!i.isInDOM(n)&&!this.lockedGroups[o]){a.remove();for(const t in this.byGroups)this.byGroups[t].findAndSplice(t=>t==e);return this.observer.unobserve(n),void this.visible.delete(e)}t?a.paused||a.pause():a.paused&&this.visible.has(e)&&a.autoplay&&a.play()}lockGroup(e){this.lockedGroups[e]=!0}unlockGroup(e){delete this.lockedGroups[e],this.checkAnimations(void 0,e)}refreshGroup(e){const t=this.byGroups[e];t&&t.length&&(t.forEach(e=>{this.observer.unobserve(e.el)}),window.requestAnimationFrame(()=>{t.forEach(e=>{this.observer.observe(e.el)})}))}lockIntersectionGroup(e){this.intersectionLockedGroups[e]=!0}unlockIntersectionGroup(e){delete this.intersectionLockedGroups[e],this.refreshGroup(e)}}t.AnimationIntersector=a;const o=new a;t.default=o},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ripple=void 0;const i=s(1);let n=0;t.ripple=function(e,t=(()=>Promise.resolve()),s=null){if(e.querySelector(".c-ripple"))return;e.classList.add("rp");let a=document.createElement("div");a.classList.add("c-ripple");const o=e.classList.contains("rp-square");o&&a.classList.add("is-square");const r=o?200:700;let d;e.append(a);let f=(e,i)=>{let o=Date.now(),f=document.createElement("span"),l=n++;d=()=>{let e=Date.now()-o;if(e<r){let t=Math.max(r-e,r/2);setTimeout(()=>f.classList.add("hiding"),Math.max(t-r/2,0)),setTimeout(()=>{f.remove(),s&&s(l)},t)}else f.classList.add("hiding"),setTimeout(()=>{f.remove(),s&&s(l)},r/2);d=null},t&&t(l),window.requestAnimationFrame(()=>{f.classList.add("c-ripple__circle");let t,s,n=a.getBoundingClientRect(),o=e-n.left,r=i-n.top;n.width>n.height?(t=n.width,s=o):(t=n.height,s=r),t-=s>t/2?t-s:s,t*=1.1;let d=o-t/2,l=r-t/2;f.style.width=f.style.height=t+"px",f.style.left=d+"px",f.style.top=l+"px",a.append(f)})},l=!1;if(i.touchSupport){let t=()=>{d&&d()};e.addEventListener("touchstart",s=>{if(s.touches.length>1||"BUTTON"==s.target.tagName&&s.target!=e)return;l=!0;let{clientX:i,clientY:n}=s.touches[0];f(i,n),window.addEventListener("touchend",t,{once:!0}),window.addEventListener("touchmove",e=>{e.cancelBubble=!0,e.stopPropagation(),d&&d(),window.removeEventListener("touchend",t)},{once:!0})},{passive:!0})}else e.addEventListener("mousedown",t=>{if("0"==e.dataset.ripple)return!1;if(l)return l=!1,!1;let{clientX:s,clientY:i}=t;f(s,i),window.addEventListener("mouseup",d,{once:!0})})}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.wrapPoll=t.wrapAlbum=t.wrapReply=t.wrapSticker=t.wrapPhoto=t.wrapAudio=t.wrapDocument=t.formatDate=t.wrapVideo=void 0;const a=n(s(13)),o=n(s(17)),r=n(s(11)),d=s(0),f=n(s(35)),l=n(s(49)),c=s(3),u=s(4),h=n(s(7)),p=s(57),m=n(s(58)),g=s(1),b=n(s(18)),v=n(s(81)),y=n(s(53)),w=s(59),_=n(s(37));function S({doc:e,container:t,message:s,boxWidth:n,boxHeight:o,withTail:c,isOut:h,middleware:p,lazyLoadQueue:m,noInfo:g,group:v}){var y,w;if(!g&&"round"!=e.type){let s,i;s=document.createElement("span"),s.classList.add("video-time"),t.append(s),"gif"!=e.type?(s.innerText=(e.duration+"").toHHMMSS(!1),i=document.createElement("span"),i.classList.add("video-play","tgico-largeplay","btn-circle","position-center"),t.append(i)):s.innerText="GIF"}if("image/gif"==e.mime_type)return D(e,s,t,n,o,c,h,m,p);const S=document.createElement("video");if(S.muted=!0,S.setAttribute("playsinline",""),"round"==e.type){const t=_.default.addMedia(e,s.mid);S.addEventListener("canplay",()=>{t.currentTime>0&&(S.currentTime=t.currentTime),t.paused||S.play()},{once:!0});const i=()=>{t.removeEventListener("timeupdate",n),t.removeEventListener("play",a),t.removeEventListener("pause",o),S.removeEventListener("play",r),S.removeEventListener("pause",f)},n=()=>{d.isInDOM(S)||i()},a=()=>{S.play()},o=()=>{S.pause()},r=()=>{t.play()},f=()=>{d.isInDOM(S)?t.pause():i()};t.addEventListener("timeupdate",n),t.addEventListener("play",a),t.addEventListener("pause",o),S.addEventListener("play",r),S.addEventListener("pause",f)}else S.autoplay=!0;let L;if(s){if("video"==e.type&&(null===(y=e.thumbs)||void 0===y?void 0:y.length))return D(e,s,t,n,o,c,h,m,p);if(c?L=M(e,s,t,n,o,h):(n&&o&&a.default.setAttachmentSize(e,t,n,o,!1,!0),e.thumbs&&(null===(w=e.thumbs[0])||void 0===w?void 0:w.bytes)&&a.default.setAttachmentPreview(e.thumbs[0].bytes,t,!1),L=t.lastElementChild,"IMG"!=(null==L?void 0:L.tagName)&&t.append(L=new Image)),L&&L.classList.add("thumbnail"),c){const e=L.parentElement;S.width=+e.getAttributeNS(null,"width"),S.height=+e.getAttributeNS(null,"height"),e.append(S)}}if(!(null==L?void 0:L.parentElement)){const t=r.default.getThumb(e,!1);t&&t.promise.then(()=>{S.poster=t.thumb.url})}!S.parentElement&&t&&t.append(S);const E=()=>i(this,void 0,void 0,(function*(){var i;if(p&&!p())return;let n;if(null===(i=null==s?void 0:s.media)||void 0===i?void 0:i.preloader)n=s.media.preloader,n.attach(t,void 0,void 0,!0);else if(e.downloaded||e.supportsStreaming)e.supportsStreaming&&(n=new f.default(t,!1),S.addEventListener("canplay",()=>{n.detach()},{once:!0}));else{const s=r.default.downloadDocNew(e);n=new f.default(t,!0),n.attach(t,!0,s,!0),yield s}p&&!p()||(S.addEventListener("canplay",()=>{(null==L?void 0:L.parentElement)&&L.remove(),"gif"==e.type&&v&&b.default.addAnimation(S,v)},{once:!0}),u.renderImageFromUrl(S,e.url),"gif"==e.type?(S.muted=!0,S.loop=!0,S.autoplay=!0):"round"==e.type&&(S.dataset.ckin="circle",S.dataset.overlay="1",new l.default(S)))}));return m?m.push({div:t,load:E}):E(),S}function L(e,t=!1,s){let i=new v.default;return i.setAttribute("doc-id",e.id),i.setAttribute("with-time",""+ +t),i.setAttribute("message-id",""+s),i}function M(e,t,s,i,n,o){const r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.classList.add("bubble__media-container",o?"is-out":"is-in");const d=document.createElementNS("http://www.w3.org/2000/svg","foreignObject");a.default.setAttachmentSize(e,d,i,n);const f=+d.getAttributeNS(null,"width"),l=+d.getAttributeNS(null,"height");r.setAttributeNS(null,"width",""+f),r.setAttributeNS(null,"height",""+l),r.setAttributeNS(null,"viewBox","0 0 "+f+" "+l),r.setAttributeNS(null,"preserveAspectRatio","none");const c="clip"+t.mid;r.dataset.clipID=c;const u=document.createElementNS("http://www.w3.org/2000/svg","defs");let h="";t.message||(h+=o?`\n <use href="#message-tail" transform="translate(${f-2}, ${l}) scale(-1, -1)"></use>\n <path />\n `:`\n <use href="#message-tail" transform="translate(2, ${l}) scale(1, -1)"></use>\n <path />\n `),u.innerHTML=`<clipPath id="${c}">${h}</clipPath>`,s.style.width=parseInt(s.style.width)-9+"px",s.classList.add("with-tail"),r.append(u,d),s.append(r);let p=d.firstElementChild;return p||d.append(p=new Image),p}function D(e,t,s,i=g.mediaSizes.active.regular.width,n=g.mediaSizes.active.regular.height,o,d,l,c,h=null){var p;let m;if(o)m=M(e,t,s,i,n,d);else{if(i&&n&&(h=a.default.setAttachmentSize(e,s,i,n,!1,!0)),"document"==e._||!e.downloaded){const t=e.sizes||e.thumbs;t&&(null===(p=t[0])||void 0===p?void 0:p.bytes)&&a.default.setAttachmentPreview(t[0].bytes,s,!1)}m=s.lastElementChild,m&&"IMG"==m.tagName||s.append(m=new Image)}const b=a.default.getCacheContext(e);let v;t.media.preloader?t.media.preloader.attach(s):b.downloaded||(v=new f.default(s,!1));const y=()=>{const t="document"==e._&&e.animated?r.default.downloadDocNew(e):a.default.preloadPhoto(e,h);return v&&v.attach(s,!0,t),t.then(()=>{c&&!c()||u.renderImageFromUrl(m||s,b.url||e.url)})};return b.downloaded||!l?y():l.push({div:s,load:y,wasSeen:!0})}t.wrapVideo=S,t.formatDate=(e,t=!1,s=!0)=>{const i=new Date(1e3*e);let n=["January","February","March","April","May","June","July","August","September","Octomber","November","December"][i.getMonth()];t&&(n=n.slice(0,3));let a=n+" "+i.getDate();return s&&(a+=", "+i.getFullYear()),a+" at "+i.getHours()+":"+("0"+i.getMinutes()).slice(-2)},t.wrapDocument=function(e,s=!1,i=!1,n){if("audio"==e.type||"voice"==e.type)return L(e,s,n);let a=e.file_name?e.file_name.split("."):"",o="";o=a.length>1&&Array.isArray(a)?a.pop().toLowerCase():"file";let l=document.createElement("div");l.classList.add("document","ext-"+o);let c=o;"photo"==e.type&&(l.classList.add("photo"),c=`<img src="${URL.createObjectURL(e.file)}">`);let u=e.file_name||"Unknown.file",h=d.formatBytes(e.size);if(s&&(h+=" · "+t.formatDate(e.date)),l.innerHTML=`\n <div class="document-ico">${c}</div>\n ${i?"":'<div class="document-download"><div class="tgico-download"></div></div>'}\n <div class="document-name">${u}</div>\n <div class="document-size">${h}</div>\n `,!i){let t,s,i=l.querySelector(".document-download");l.addEventListener("click",()=>{if(s)s.cancel();else{if(i.classList.contains("downloading"))return;t||(t=new f.default(null,!0)),s=r.default.saveDocFile(e),t.attach(i,!0,s),s.then(()=>{i.remove()}).catch(e=>{"AbortError"===e.name&&(s=null)}).finally(()=>{i.classList.remove("downloading")}),i.classList.add("downloading")}})}return l},t.wrapAudio=L,t.wrapPhoto=D,t.wrapSticker=function({doc:e,div:t,middleware:s,lazyLoadQueue:n,group:f,play:l,onlyThumb:c,emoji:h,width:p,height:m,withThumb:b,loop:v}){var _;const S=e.sticker;if(p||(p=h?void 0:200),m||(m=h?void 0:200),2!=S||o.default.loaded||o.default.loadLottieWorkers(),!S)throw console.error("wrong doc for wrapSticker!",e),new Error("wrong doc for wrapSticker!");t.dataset.docID=e.id;const L=h?d.getEmojiToneIndex(h):-1;if((null===(_=e.thumbs)||void 0===_?void 0:_.length)&&!t.firstElementChild&&(!e.downloaded||2==S||c)&&L<=0){const i=e.thumbs[0];let o;const d=()=>{t.childElementCount||t.append(o)};if(i.bytes||i.url)o=new Image,!g.isSafari||e.stickerThumbConverted||i.url?u.renderImageFromUrl(o,a.default.getPreviewURLFromThumb(i,!0),d):y.default.convert(e.id,i.bytes).then(n=>{i.bytes=n,e.stickerThumbConverted=!0,s&&!s()||t.childElementCount||u.renderImageFromUrl(o,a.default.getPreviewURLFromThumb(i,!0),d)}).catch(()=>{});else if(2==S&&(b||c)){o=new Image;const a=()=>{if(t.childElementCount||s&&!s())return;const n=()=>{t.childElementCount||s&&!s()||u.renderImageFromUrl(o,i.url,d)};return i.url?(n(),Promise.resolve()):r.default.getThumbURL(e,i).promise.then(n)};if(n&&c)return n.push({div:t,load:a}),Promise.resolve();a()}}if(c)return Promise.resolve();let M=e.downloaded,D=()=>i(this,void 0,void 0,(function*(){if(!s||s())if(2==S)yield r.default.downloadDocNew(e.id).then(w.readBlobAsText).then(JSON.parse).then(e=>i(this,void 0,void 0,(function*(){if(s&&!s())return;let i=yield o.default.loadAnimationWorker({container:t,loop:v&&!h,autoplay:l,animationData:e,width:p,height:m},f,L);i.addListener("firstFrame",()=>{t.firstElementChild&&"IMG"==t.firstElementChild.tagName?t.firstElementChild.remove():i.canvas.classList.add("fade-in")},!0),h&&t.addEventListener("click",()=>{let e=o.default.getAnimation(t);e.paused&&e.restart()})})));else if(1==S){let i=new Image;M||t.firstElementChild&&"IMG"==t.firstElementChild.tagName||(i.classList.add("fade-in-transition"),i.style.opacity="0",i.addEventListener("load",()=>{e.downloaded=!0,window.requestAnimationFrame(()=>{i.style.opacity=""})}));const n=()=>{s&&!s()||u.renderImageFromUrl(i,e.url,()=>{t.firstElementChild&&t.firstElementChild!=i&&t.firstElementChild.remove(),t.append(i)})};e.url?n():r.default.downloadDocNew(e).then(n)}}));return!n||e.downloaded&&2!=S?D():(n.push({div:t,load:D,wasSeen:"chat"==f&&2!=S}),Promise.resolve())},t.wrapReply=function(e,t,s,i){const n=i?"pinned-message":"reply",o=document.createElement("div");o.classList.add(n);const r=document.createElement("div");r.classList.add(n+"-border");const d=document.createElement("div");d.classList.add(n+"-content");const f=document.createElement("div");f.classList.add(n+"-title");const l=document.createElement("div");l.classList.add(n+"-subtitle"),f.innerHTML=e?c.RichTextProcessor.wrapEmojiText(e):"";const h=s&&s.media;if(h){if(l.innerHTML=s.rReply,h.photo||h.document&&-1!==["video"].indexOf(h.document.type)){let e=document.createElement("div");e.classList.add(n+"-media");let t=h.photo||h.document,s=t.sizes||t.thumbs;s&&s[0].bytes&&a.default.setAttachmentPreview(s[0].bytes,e,!1,!0),a.default.preloadPhoto(t,a.default.choosePhotoSize(t,32,32)).then(()=>{u.renderImageFromUrl(e,"photo"==t._?t.url:a.default.getDocumentCachedThumb(t.id).url)}),d.append(e),o.classList.add("is-media")}}else l.innerHTML=t?c.RichTextProcessor.wrapEmojiText(t):"";return d.append(f,l),o.append(r,d),o},t.wrapAlbum=function({groupID:e,attachmentDiv:t,middleware:s,uploading:i,lazyLoadQueue:n,isOut:o}){const r=[],d=Object.keys(h.default.groupedMessagesStorage[e]).map(e=>+e).sort((e,t)=>e-t);for(const e of d){const t=h.default.getMessage(e),s=t.media.photo||t.media.document,i="photo"==s._?a.default.choosePhotoSize(s,480,480):{w:s.w,h:s.h};r.push({size:i,media:s,message:t})}const f=new p.Layouter(r.map(e=>({w:e.size.w,h:e.size.h})),g.mediaSizes.active.album.width,100,2).layout();for(const{geometry:e,sides:i}of f){const a=r.shift();if(!a){console.error("no item for layout!");continue}const{size:d,media:f,message:l}=a,c=document.createElement("div");c.classList.add("album-item"),c.dataset.mid=l.mid,c.style.width=e.width+"px",c.style.height=e.height+"px",c.style.top=e.y+"px",c.style.left=e.x+"px",i&p.RectPart.Right&&(t.style.width=e.width+e.x+"px"),i&p.RectPart.Bottom&&(t.style.height=e.height+e.y+"px"),i&p.RectPart.Left&&i&p.RectPart.Top&&(c.style.borderTopLeftRadius="inherit"),i&p.RectPart.Left&&i&p.RectPart.Bottom&&(c.style.borderBottomLeftRadius="inherit"),i&p.RectPart.Right&&i&p.RectPart.Top&&(c.style.borderTopRightRadius="inherit"),i&p.RectPart.Right&&i&p.RectPart.Bottom&&(c.style.borderBottomRightRadius="inherit"),"photo"==f._?D(f,l,c,0,0,!1,o,n,s,d):S({doc:l.media.document,container:c,message:l,boxWidth:0,boxHeight:0,withTail:!1,isOut:o,lazyLoadQueue:n,middleware:s}),t.append(c)}},t.wrapPoll=function(e,t){const s=new m.default;return s.setAttribute("poll-id",e),s.setAttribute("message-id",""+t),s}},function(e,t,s){"use strict";
/*!
* Webogram v0.7.0 - messaging web application for MTProto
* https://github.com/zhukov/webogram
* Copyright (C) 2014 Igor Zhukov <igor.beatle@gmail.com>
* https://github.com/zhukov/webogram/blob/master/LICENSE
*/Object.defineProperty(t,"__esModule",{value:!0}),t.getFileNameByLocation=t.nextRandomInt=t.addPadding=t.longFromInts=t.longToBytes=t.bytesToWordss=t.bytesFromWordss=t.bytesFromWords=t.longToInts=t.bufferConcats=t.bufferConcat=t.bytesFromArrayBuffer=t.convertToByteArray=t.convertToUint8Array=t.convertToArrayBuffer=t.bytesToArrayBuffer=t.bytesFromBigInt=t.bytesXor=t.bytesCmp=t.blobSafeMimeType=t.blobConstruct=t.dataUrlToBlob=t.base64ToBlob=t.uint6ToBase64=t.bytesToBase64=t.bytesFromHex=t.bytesToHex=t.bigStringInt=t.bigint=t.isObject=t.dT=void 0;const i=s(52);var n=Date.now();function a(e){return new i.BigInteger(e.toString(16),16)}function o(e){return new i.BigInteger(e,10)}function r(e){return e<26?e+65:e<52?e+71:e<62?e-4:62===e?43:63===e?47:65}function d(e,t){for(var s=atob(e),i=s.length,n=Math.ceil(i/1024),a=new Array(n),o=0;o<n;++o){for(var r=1024*o,d=Math.min(r+1024,i),l=new Array(d-r),c=r,u=0;c<d;++u,++c)l[u]=s[c].charCodeAt(0);a[o]=new Uint8Array(l)}return f(a,t)}function f(e,t=""){let s;const i=l(t);try{s=new Blob(e,{type:i})}catch(t){let n=new BlobBuilder;e.forEach(e=>{n.append(e)}),s=n.getBlob(i)}return s}function l(e){return-1===["image/jpeg","image/png","image/gif","image/webp","image/bmp","video/mp4","video/webm","video/quicktime","audio/ogg","audio/mpeg","audio/mp4","application/json"].indexOf(e)?"application/octet-stream":e}function c(e){return new Uint8Array(e).buffer}function u(e){return void 0!==e.buffer?e:new Uint8Array(e)}function h(e,t){var s=e.byteLength||e.length,i=t.byteLength||t.length,n=new Uint8Array(s+i);return n.set(e instanceof ArrayBuffer?new Uint8Array(e):e,0),n.set(t instanceof ArrayBuffer?new Uint8Array(t):t,s),n.buffer}function p(e){var t=o(e).divideAndRemainder(a(4294967296));return[t[0].intValue(),t[1].intValue()]}function m(e){for(var t=e.words,s=e.sigBytes,i=[],n=0;n<s;n++)i.push(t[n>>>2]>>>24-n%4*8&255);return i}t.dT=function(){return"["+((Date.now()-n)/1e3).toFixed(3)+"]"},t.isObject=function(e){return"object"==typeof e&&null!==e},t.bigint=a,t.bigStringInt=o,t.bytesToHex=function(e){e=e||[];for(var t=[],s=0;s<e.length;s++)t.push((e[s]<16?"0":"")+(e[s]||0).toString(16));return t.join("")},t.bytesFromHex=function(e){var t,s=e.length,i=0,n=[];for(e.length%2&&(n.push(parseInt(e.charAt(0),16)),i++),t=i;t<s;t+=2)n.push(parseInt(e.substr(t,2),16));return n},t.bytesToBase64=function(e){for(var t,s="",i=e.length,n=0,a=0;a<i;a++)t=a%3,n|=e[a]<<(16>>>t&24),2!==t&&i-a!=1||(s+=String.fromCharCode(r(n>>>18&63),r(n>>>12&63),r(n>>>6&63),r(63&n)),n=0);return s.replace(/A(?=A$|$)/g,"=")},t.uint6ToBase64=r,t.base64ToBlob=d,t.dataUrlToBlob=function(e){var t=e.split(",");return d(t[1],t[0].split(":")[1].split(";")[0])},t.blobConstruct=f,t.blobSafeMimeType=l,t.bytesCmp=function(e,t){var s=e.length;if(s!=t.length)return!1;for(var i=0;i<s;i++)if(e[i]!=t[i])return!1;return!0},t.bytesXor=function(e,t){for(var s=e.length,i=[],n=0;n<s;++n)i[n]=e[n]^t[n];return i},t.bytesFromBigInt=function(e,t){var s=e.toByteArray();if(t&&s.length<t){for(var i=[],n=0,a=t-s.length;n<a;n++)i[n]=0;s=s instanceof ArrayBuffer?h(i,s):i.concat(s)}else for(;!s[0]&&(!t||s.length>t);)s=s.slice(1);return s},t.bytesToArrayBuffer=c,t.convertToArrayBuffer=function(e){return e instanceof ArrayBuffer?e:void 0!==e.buffer&&e.buffer.byteLength==e.length*e.BYTES_PER_ELEMENT?e.buffer:c(e)},t.convertToUint8Array=u,t.convertToByteArray=function(e){if(Array.isArray(e))return e;for(var t=[],s=0,i=(e=u(e)).length;s<i;s++)t.push(e[s]);return t},t.bytesFromArrayBuffer=function(e){for(var t=e.byteLength,s=new Uint8Array(e),i=[],n=0;n<t;++n)i[n]=s[n];return i},t.bufferConcat=h,t.bufferConcats=function(...e){let t=0;e.forEach(e=>t+=e.byteLength||e.length);var s=new Uint8Array(t);let i=0;return e.forEach(e=>{s.set(e instanceof ArrayBuffer?new Uint8Array(e):e,i),i+=e.byteLength||e.length}),s},t.longToInts=p,t.bytesFromWords=m,t.bytesFromWordss=function(e){for(var t=[],s=0;s<4*e.length;s++)t.push(e[s>>>2]>>>24-s%4*8&255);return t},t.bytesToWordss=function(e){let t;t=e instanceof ArrayBuffer?new Uint8Array(e):e;var s,i=t.length,n=[];for(s=0;s<i;s++)n[s>>>2]|=t[s]<<24-s%4*8;return new Uint32Array(n)},t.longToBytes=function(e){return m({words:p(e),sigBytes:8}).reverse()},t.longFromInts=function(e,t){return a(e).shiftLeft(32).add(a(t)).toString(10)},t.addPadding=function(e,t=16,s,n=!1,a=!1){let o=t-(e.byteLength||e.length)%t;if(o>0&&(o<t||n)){let t=new Array(o);if(s)for(let e=0;e<o;e++)t[e]=0;else(new i.SecureRandom).nextBytes(t);if(e instanceof ArrayBuffer)e=a?h(t,e):h(e,t);else if(e instanceof Uint8Array){let s=new Uint8Array(e.length+t.length);a?(s.set(t),s.set(e,t.length)):(s.set(e),s.set(t,e.length)),e=s}else e=a?t.concat(e):e.concat(t)}return e},t.nextRandomInt=function(e){return Math.floor(Math.random()*e)},t.getFileNameByLocation=function(e,t){const s=""["".length-1]||"";switch(e._){case"inputPhotoFileLocation":case"inputDocumentFileLocation":{const t=e.thumb_size?"_"+e.thumb_size:"";return(""[0]?""[0]+"_":"")+e.id+t+(s?"."+s:s)}case"fileLocationToBeDeprecated":case"inputPeerPhotoFileLocation":case"inputStickerSetThumb":case"inputFileLocation":return e.volume_id+"_"+e.local_id+(s?"."+s:s);default:return console.error("Unrecognized location:",e),""}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppSidebarRight=void 0;const d=s(4),f=r(s(6)),l=s(0),c=r(s(7)),u=r(s(13)),h=r(s(8)),p=r(s(5)),m=r(s(27)),g=s(3),b=s(10),v=r(s(12)),y=r(s(56)),w=r(s(23)),_=s(20),S=a(s(42)),L=r(s(50)),M=s(1),D=r(s(60)),E=r(s(29)),I=s(26),C=r(s(82)),P=r(s(83)),k=r(s(84));let T=(e,t)=>{window.requestAnimationFrame(()=>{t.childElementCount>1&&t.firstElementChild.remove();let s=document.createElement("p");s.innerHTML=e,t.prepend(s),t.style.display=""})};const A=new C.default,X=new P.default,x=new k.default,F={contentMembers:"inputMessagesFilterContacts",contentMedia:"inputMessagesFilterPhotoVideo",contentDocuments:"inputMessagesFilterDocument",contentLinks:"inputMessagesFilterUrl",contentAudio:"inputMessagesFilterMusic"};let B=(()=>{class e extends D.default{constructor(){super(document.getElementById("column-right"),{[e.SLIDERITEMSIDS.stickers]:A,[e.SLIDERITEMSIDS.pollResults]:X,[e.SLIDERITEMSIDS.gifs]:x}),this.profileElements={},this.sharedMedia={},this.loadSidebarMediaPromises={},this.loadedAllMedia={},this.sharedMediaTypes=["inputMessagesFilterContacts","inputMessagesFilterPhotoVideo","inputMessagesFilterDocument","inputMessagesFilterUrl","inputMessagesFilterMusic"],this.sharedMediaType="inputMessagesFilterPhotoVideo",this.sharedMediaSelected=null,this.lazyLoadQueue=new w.default,this.historiesStorage={},this.usedFromHistory={},this.log=b.logger("SR",b.LogLevels.error),this.peerID=0,this.scroll=null,this.prevTabID=-1,this.mediaDivsByIDs={},this.urlsToRevoke=[],this.loadMutex=Promise.resolve(),this.stickersTab=A,this.pollResultsTab=X,this.gifsTab=x,this.profileContainer=this.sidebarEl.querySelector(".profile-container"),this.profileContentEl=this.sidebarEl.querySelector(".profile-content"),this.contentContainer=this.sidebarEl.querySelector(".content-container"),this.profileElements={avatar:this.profileContentEl.querySelector(".profile-avatar"),name:this.profileContentEl.querySelector(".profile-name"),subtitle:this.profileContentEl.querySelector(".profile-subtitle"),bio:this.profileContentEl.querySelector(".profile-row-bio"),username:this.profileContentEl.querySelector(".profile-row-username"),phone:this.profileContentEl.querySelector(".profile-row-phone"),notificationsRow:this.profileContentEl.querySelector(".profile-row-notifications"),notificationsCheckbox:this.profileContentEl.querySelector("#profile-notifications"),notificationsStatus:this.profileContentEl.querySelector(".profile-row-notifications > p")},this.sharedMedia={contentMembers:this.profileContentEl.querySelector("#content-members"),contentMedia:this.profileContentEl.querySelector("#content-media"),contentDocuments:this.profileContentEl.querySelector("#content-docs"),contentLinks:this.profileContentEl.querySelector("#content-links"),contentAudio:this.profileContentEl.querySelector("#content-audio")},this.searchContainer=this.sidebarEl.querySelector("#search-private-container"),this.searchCloseBtn=this.searchContainer.querySelector(".sidebar-close-button"),this.searchInput=new E.default("Search"),this.searchCloseBtn.parentElement.append(this.searchInput.container),this.privateSearch=new S.default(this.searchContainer.querySelector(".chats-container"),this.searchInput,{messages:new S.SearchGroup("Private Search","messages")});let t=this.profileContentEl.querySelector(".content-container .tabs-container");this.profileTabs=this.profileContentEl.querySelector(".profile-tabs"),this.scroll=new f.default(this.profileContainer,"y","SR",void 0,400),this.scroll.onScrolledBottom=()=>{this.sharedMediaSelected&&this.sharedMediaSelected.childElementCount&&(this.log("onScrolledBottom will load media"),this.loadSidebarMedia(!0))},I.horizontalMenu(this.profileTabs,t,(e,t)=>{this.prevTabID!=e&&(this.sharedMediaType=this.sharedMediaTypes[e],this.sharedMediaSelected=t.firstElementChild,-1!=this.prevTabID&&this.profileTabs.offsetTop&&(this.scroll.scrollTop-=this.profileTabs.offsetTop),-1==this.prevTabID||this.sharedMediaSelected.childElementCount||this.loadSidebarMedia(!0),this.prevTabID=e)},()=>{this.scroll.onScroll()}),this.sidebarEl.querySelector(".sidebar-close-button").addEventListener("click",()=>{this.toggleSidebar(!1)}),this.searchCloseBtn.addEventListener("click",()=>{this.searchContainer.classList.remove("active"),this.privateSearch.reset()}),this.sharedMedia.contentMedia.addEventListener("click",e=>{const t=e.target,s=+t.dataset.mid;if(!s)return void this.log.warn("no messageID by click on target:",t);const i=c.default.getMessage(s),n=Object.keys(this.mediaDivsByIDs).map(e=>+e).sort((e,t)=>e-t),a=n.findIndex(e=>e==s),o=n.map(e=>({element:this.mediaDivsByIDs[e],mid:e}));y.default.openMedia(i,t,!1,this.sidebarEl,o.slice(a+1).reverse(),o.slice(0,a).reverse(),!0)}),this.profileElements.notificationsCheckbox.addEventListener("change",()=>{v.default.mutePeer(this.peerID)})}beginSearch(){this.toggleSidebar(!0),this.searchContainer.classList.add("active"),this.privateSearch.beginSearch(this.peerID)}toggleSidebar(e){const t=this.sidebarEl.classList.contains("active");let s;if(void 0!==e?e?t||(s=!0):t&&(s=!0):s=!0,!s)return Promise.resolve();if(M.mediaSizes.isMobile)return v.default.selectTab(t?1:2),Promise.resolve();const i=()=>{this.sidebarEl.classList.toggle("active",e)};return new Promise((e,s)=>{const n=[],a=new IntersectionObserver(s=>{for(const e of s){const t=e.target;e.isIntersecting||n.push({element:t,height:t.scrollHeight})}for(const e of n)e.element.style.minHeight=e.height+"px",e.element.firstElementChild.style.display="none",e.element.style.width="1px";a.disconnect(),i(),setTimeout(()=>{for(const e of n)e.element.style.minHeight="",e.element.style.width="",e.element.firstElementChild.style.display="";t&&(L.default.close(),this.searchCloseBtn.click()),e()},200)});if(Object.keys(v.default.bubbles).length)for(const e in v.default.bubbles)a.observe(v.default.bubbles[e]);else i(),setTimeout(e,200)})}filterMessagesByType(e,t){let s=[];for(let t of e){let e=c.default.getMessage(t);e.media&&s.push(e)}let i=[];switch(t){case"inputMessagesFilterPhotoVideo":for(let e of s){let t=e.media.photo||e.media.document||e.media.webpage&&e.media.webpage.document;t&&("document"==t._&&"video"!=t.type||i.push(e))}break;case"inputMessagesFilterDocument":for(let e of s){if(!e.media.document||"voice"==e.media.document.type||"audio"==e.media.document.type)continue;let t=e.media.document;t.attributes&&t.attributes.find(e=>"documentAttributeSticker"==e._)||i.push(e)}break;case"inputMessagesFilterUrl":for(let e of s)e.media.webpage&&"webPageEmpty"!=e.media.webpage._&&i.push(e);break;case"inputMessagesFilterMusic":for(let e of s)e.media.document&&"audio"==e.media.document.type&&i.push(e)}return i}performSearchResult(e,t){return o(this,void 0,void 0,(function*(){const s=this.peerID,i=[],n=[];let a;switch(t){case"inputMessagesFilterPhotoVideo":a=this.sharedMedia.contentMedia;for(const t of e){const e=t.media.photo||t.media.document||t.media.webpage&&t.media.webpage.document,a=document.createElement("div");a.classList.add("media-item");const o="photo"==e._,r=o?u.default.getPhoto(e.id):null;let f;if(r)f=r.downloaded>0;else{const t=u.default.getDocumentCachedThumb(e.id);f=(null==t?void 0:t.downloaded)>0}if(!o){const t=document.createElement("span");t.classList.add("video-time"),a.append(t),"gif"!=e.type?t.innerText=(e.duration+"").toHHMMSS(!1):t.innerText="GIF"}const c=()=>u.default.preloadPhoto(o?e.id:e,u.default.choosePhotoSize(e,200,200)).then(()=>{if(l.$rootScope.selectedPeerID!=s)return void this.log.warn("peer changed");const t=r&&r.url||u.default.getDocumentCachedThumb(e.id).url;if(t){const e=g?()=>{b.style.opacity=""}:void 0;d.renderImageFromUrl(b,t,e)}});let h;const p=e.sizes||e.thumbs,m=!f&&p&&p[0].bytes;m&&(h=new Image,h.classList.add("media-image","thumbnail"),h.dataset.mid=""+t.mid,u.default.setAttachmentPreview(p[0].bytes,h,!1,!1),a.append(h));const g=!f||!m,b=new Image;if(b.dataset.mid=""+t.mid,b.classList.add("media-image"),g&&(b.style.opacity="0"),a.append(b),f||m){const t=new Promise((t,s)=>{(h||b).addEventListener("load",()=>{clearTimeout(i),t()});const i=setTimeout(()=>{this.log("did not loaded",h,e,f,p),s()},1e3)});n.push(t)}(null==p?void 0:p.length)&&(f?c():this.lazyLoadQueue.push({div:a,load:c})),i.push(a),this.mediaDivsByIDs[t.mid]=a}break;case"inputMessagesFilterDocument":a=this.sharedMedia.contentDocuments;for(let t of e){let e=_.wrapDocument(t.media.document,!0,!1,t.mid);i.push(e)}break;case"inputMessagesFilterUrl":a=this.sharedMedia.contentLinks;for(let t of e){let e=t.media.webpage,n=document.createElement("div"),a=document.createElement("div");if(a.classList.add("preview"),a.innerText=(e.title||e.description||e.url||e.display_url).slice(0,1),a.classList.add("empty"),e.photo){let t=()=>u.default.preloadPhoto(e.photo.id,u.default.choosePhotoSize(e.photo,60,60)).then(()=>{l.$rootScope.selectedPeerID==s?(a.classList.remove("empty"),a.innerText="",d.renderImageFromUrl(a,e.photo.url)):this.log.warn("peer changed")});this.lazyLoadQueue.push({div:a,load:t})}let o=e.rTitle||"",r=e.rDescription||"",f=g.RichTextProcessor.wrapRichText(e.url||"");o||(o=e.display_url.split("/",1)[0]),n.append(a),n.insertAdjacentHTML("beforeend",`\n <div class="title">${o}</button>\n <div class="subtitle">${r}</div>\n <div class="url">${f}</div>\n `),n.innerText.trim().length&&i.push(n)}break;case"inputMessagesFilterMusic":a=this.sharedMedia.contentAudio;for(let t of e){let e=_.wrapAudio(t.media.document,!0,t.mid);i.push(e)}break;default:console.warn("death is my friend",e)}if(this.loadMutex&&n.push(this.loadMutex),n.length&&(yield Promise.all(n),this.peerID!=s))this.log.warn("peer changed");else if(i.length&&a.append(...i),a){const t=a.parentElement;if(Array.from(t.children).slice(1).forEach(e=>{e.remove()}),!e.length&&!a.childElementCount){const e=document.createElement("div");e.innerText="Nothing interesting here yet...",e.classList.add("position-center","text-center","content-empty","no-select"),t.append(e)}}}))}loadSidebarMedia(e=!1){var t;this.log("loadSidebarMedia",e,this.peerID,this.loadSidebarMediaPromises);const s=this.peerID;let i=e?[this.sharedMediaType]:this.sharedMediaTypes;if(i=i.filter(e=>!this.loadedAllMedia[e]),!i.length)return;const n=3*(u.default.windowH/130|0),a=null!==(t=this.historiesStorage[s])&&void 0!==t?t:this.historiesStorage[s]={},o=i.map(e=>{var t;if(this.loadSidebarMediaPromises[e])return this.loadSidebarMediaPromises[e];const i=null!==(t=a[e])&&void 0!==t?t:a[e]=[];if(i.length&&this.usedFromHistory[e]<i.length){let t=[],s=this.usedFromHistory[e];do{let a=i.slice(s,s+n);this.log("loadSidebarMedia: will render from cache",s,i,a,n),s+=a.length,t.push(...this.filterMessagesByType(a,e))}while(t.length<n&&s<i.length);if(t.length>n){let e=t.length-n;t=t.slice(0,t.length-e),s-=e}return this.usedFromHistory[e]=s,this.performSearchResult(t,e)}let o=i[i.length-1]||0,r=!o&&c.default.historiesStorage[s]?c.default.historiesStorage[s].history.slice():[];return o=!o&&r.length?r[r.length-1]:o,this.log("loadSidebarMedia: search house of glass pre",e,r,o),this.loadSidebarMediaPromises[e]=c.default.getSearch(s,"",{_:e},o,n).then(t=>{if(r=r.concat(t.history),i.push(...r),this.log("loadSidebarMedia: search house of glass",e,t,r),l.$rootScope.selectedPeerID==s)return t.history.length<n&&(this.loadedAllMedia[e]=!0),this.usedFromHistory[e]=i.length,this.performSearchResult(this.filterMessagesByType(r,e),e);this.log.warn("peer changed")},e=>{this.log.error("load error:",e)}).then(()=>{this.loadSidebarMediaPromises[e]=null})});return Promise.all(o)}cleanup(){this.loadSidebarMediaPromises={},this.loadedAllMedia={},this.prevTabID=-1,this.mediaDivsByIDs={},this.lazyLoadQueue.clear(),this.sharedMediaTypes.forEach(e=>{this.usedFromHistory[e]=0}),this.sharedMediaType="inputMessagesFilterPhotoVideo"}cleanupHTML(){this.profileElements.bio.style.display="none",this.profileElements.phone.style.display="none",this.profileElements.username.style.display="none",this.profileElements.notificationsRow.style.display="",this.profileElements.notificationsCheckbox.checked=!0,this.profileElements.notificationsStatus.innerText="Enabled",this.urlsToRevoke.length&&(this.urlsToRevoke.forEach(e=>{URL.revokeObjectURL(e)}),this.urlsToRevoke.length=0),Object.keys(this.sharedMedia).forEach(e=>{this.sharedMedia[e].innerHTML="";const t=F[e];if(!this.historiesStorage[this.peerID]||!this.historiesStorage[this.peerID][t]){const t=this.sharedMedia[e].parentElement;t.querySelector(".preloader")||d.putPreloader(t,!0);const s=t.querySelector(".content-empty");s&&s.remove()}}),this.profileTabs.firstElementChild.children[1].click()}setLoadMutex(e){this.loadMutex=e}setPeer(e){this.peerID=e,this.cleanup()}fillProfileElements(){let e=this.peerID=l.$rootScope.selectedPeerID;if(this.cleanupHTML(),this.profileElements.avatar.setAttribute("peer",""+e),e!=l.$rootScope.myID){h.default.getPeerUsername(e)&&T(h.default.getPeerUsername(e),this.profileElements.username);let t=c.default.getDialogByPeerID(e)[0];if(t){let e=!1;t.notify_settings&&t.notify_settings.mute_until&&(e=new Date(1e3*t.notify_settings.mute_until)>new Date),v.default.setMutedState(e)}}else window.requestAnimationFrame(()=>{this.profileElements.notificationsRow.style.display="none"});if(e>0){let t=p.default.getUser(e);t.phone&&e!=l.$rootScope.myID&&T(t.rPhone,this.profileElements.phone),m.default.getProfile(e,!0).then(t=>{this.peerID==e?t.rAbout&&e!=l.$rootScope.myID&&T(t.rAbout,this.profileElements.bio):this.log.warn("peer changed")})}else{let t=h.default.getPeer(e);m.default.getChatFull(t.id).then(t=>{this.peerID==e?t.about&&T(g.RichTextProcessor.wrapRichText(t.about),this.profileElements.bio):this.log.warn("peer changed")})}}}return e.SLIDERITEMSIDS={search:1,forward:2,stickers:3,pollResults:4,gifs:5},e})();t.AppSidebarRight=B;const R=new B;t.default=R},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const n=s(10);t.default=class{constructor(e=5,t=!1){this.parallelLimit=e,this.noObserver=t,this.lazyLoadMedia=[],this.inProcess=[],this.lockPromise=null,this.unlockResolve=null,this.log=n.logger("LL",n.LogLevels.error),this.intersectionLocked=!1,t||(this.observer=new IntersectionObserver(e=>{if(this.lockPromise||this.intersectionLocked)return;const t=e.filter(e=>e.isIntersecting);t.forEachReverse(e=>{const t=e.target;this.log("isIntersecting",t);const s=this.lazyLoadMedia.findAndSplice(e=>e.div==t);s&&(s.wasSeen=!0,this.lazyLoadMedia.unshift(s))}),t.length&&this.processQueue()}))}clear(){this.inProcess.length=0,this.lazyLoadMedia.length=0;for(let e of this.inProcess)this.lazyLoadMedia.push(e);this.observer&&this.observer.disconnect()}length(){return this.lazyLoadMedia.length+this.inProcess.length}lock(){this.lockPromise||(this.lockPromise=new Promise((e,t)=>{this.unlockResolve=e}))}unlock(){this.unlockResolve&&(this.lockPromise=null,this.unlockResolve(),this.unlockResolve=null)}processQueue(e){return i(this,void 0,void 0,(function*(){if(!(this.parallelLimit>0&&this.inProcess.length>=this.parallelLimit)&&(e?this.lazyLoadMedia.findAndSplice(t=>t==e):e=this.lazyLoadMedia.findAndSplice(e=>e.wasSeen),e)){this.inProcess.push(e),this.log("will load media",this.lockPromise,e);try{if(this.lockPromise){let e=performance.now();yield this.lockPromise,this.log("waited lock:",performance.now()-e)}yield e.load()}catch(e){this.log.error("loadMediaQueue error:",e)}this.noObserver||this.observer.unobserve(e.div),this.inProcess.findAndSplice(t=>t==e),this.log("loaded media",e),this.lazyLoadMedia.length&&this.processQueue()}}))}addElement(e){e.wasSeen?this.processQueue(e):(e.wasSeen=!1,this.observer&&this.observer.observe(e.div))}push(e){this.lazyLoadMedia.push(e),this.addElement(e)}unshift(e){this.lazyLoadMedia.unshift(e),this.addElement(e)}refresh(){const e=this.lazyLoadMedia;e&&e.length&&(e.forEach(e=>{this.observer.unobserve(e.div)}),window.requestAnimationFrame(()=>{e.forEach(e=>{this.observer.observe(e.div)})}))}lockIntersection(){this.intersectionLocked=!0}unlockIntersection(){this.intersectionLocked=!1,this.refresh()}}},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.deferredPromise=t.secureRandom=void 0;const i=s(21),n=s(52);t.secureRandom=new n.SecureRandom,t.deferredPromise=function(){let e={isFulfilled:!1,isRejected:!1,notify:()=>{},notifyAll:(...t)=>{e.lastNotify=t,e.listeners.forEach(e=>e(...t))},lastNotify:void 0,listeners:[],addNotifyListener:t=>{e.lastNotify&&t(...e.lastNotify),e.listeners.push(t)}},t=new Promise((s,i)=>{e.resolve=e=>{t.isFulfilled||(t.isFulfilled=!0,s(e))},e.reject=(...e)=>{t.isRejected||(t.isRejected=!0,i(...e))}});return t.finally(()=>{t.notify=null,t.listeners.length=0,t.lastNotify=null}),Object.assign(t,e),t},Object.defineProperty(Uint8Array.prototype,"hex",{get:function(){return i.bytesToHex([...this])},set:function(e){this.set(i.bytesFromHex(e))},enumerable:!0,configurable:!0}),Uint8Array.prototype.randomize=function(){return t.secureRandom.nextBytes(this),this},Uint8Array.prototype.concat=function(...e){return i.bufferConcats(this,...e)},Uint8Array.prototype.toString=function(){return String.fromCharCode.apply(null,[...this])},Uint8Array.prototype.toJSON=function(){return[...this]},Array.prototype.forEachReverse=function(e){for(var t=this.length-1;t>=0;--t)e(this[t],t,this)},Array.prototype.findAndSplice=function(e){let t=this.findIndex(e);return-1!==t?this.splice(t,1)[0]:void 0},String.prototype.toHHMMSS=function(e=!1){const t=parseInt(this+"",10),s=Math.floor(t/3600);let i=Math.floor((t-3600*s)/60),n=t-3600*s-60*i;return s&&(e=!0),i<10&&(i=e?"0"+i:i),n<10&&(n="0"+n),(s?s+":":"")+i+":"+n}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(s(79));t.default=class{constructor(e,t,s,i){this.isAuthPage=t,this.onFirstMount=s,this.onMount=i,this.installed=!1,this.pageEl=document.body.getElementsByClassName(e)[0]}mount(...e){return i(this,void 0,void 0,(function*(){if(this.onMount&&this.onMount(...e),!this.installed){if(this.onFirstMount)try{const t=this.onFirstMount(...e);t instanceof Promise&&(yield t)}catch(e){console.error("PAGE MOUNT ERROR:",e)}this.installed=!0}a.default.setPage(this)}))}}},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.horizontalMenu=void 0;const i=s(0);t.horizontalMenu=function(e,t,s,n,a=250){const o={};let r=null,d=-1;const f=s=>{if(s==d)return!1;const i=r,f=t.children[s];if("none"==t.dataset.slider)return i&&i.classList.remove("active"),f.classList.add("active"),d=s,r=f,void(n&&n());const l=d<s;-1!=d?e||"tabs"==t.dataset.slider?function(e,t,s){s?(e.style.transform="translateX(100%)",t.style.transform="translateX(-100%)"):(e.style.transform="translateX(-100%)",t.style.transform="translateX(100%)"),e.classList.add("active"),e.offsetWidth,e.style.transform=""}(f,r,l):function(e,t,s){s?(t.style.filter="brightness(80%)",t.style.transform="translateX(-25%)",e.style.transform="translateX(100%)"):(e.style.filter="brightness(80%)",e.style.transform="translateX(-25%)",t.style.transform="translateX(100%)"),e.classList.add("active"),e.offsetWidth,e.style.transform="",e.style.filter=""}(f,r,l):f.classList.add("active");const c=d;o.hasOwnProperty(s)&&clearTimeout(o[s]),i&&(o[c]=setTimeout(()=>{i.style.transform="",i.style.filter="",i.classList.remove("active"),delete o[c],n&&n()},a)),d=s,r=f};if(e){const n=!e.classList.contains("no-stripe"),a="LI";e.addEventListener("click",(function(o){let r,l=o.target;if(l.tagName!=a&&(l=i.findUpTag(l,a)),!l)return!1;if(l.dataset.tab){if(r=+l.dataset.tab,-1==r)return!1}else r=i.whichChild(l);const c=t.children[r];if(s&&s(r,c),l.classList.contains("active")||r==d)return!1;const u=e.querySelector(a.toLowerCase()+".active");if(u&&u.classList.remove("active"),n&&-1!=d){const e=l.querySelector("i"),t=l.parentElement.children[d].querySelector("i");t.classList.remove("animate"),e.classList.remove("animate");const s=t.parentElement.parentElement.offsetLeft-e.parentElement.parentElement.offsetLeft,i=t.clientWidth/e.clientWidth;e.style.transform=`translate3d(${s}px, 0, 0) scale3d(${i}, 1, 1)`,requestAnimationFrame(()=>{e.classList.add("animate"),e.style.transform="none"})}l.classList.add("active"),f(r)}))}return f}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppProfileManager=void 0;const a=s(0),o=n(s(33)),r=n(s(9)),d=n(s(13)),f=n(s(5)),l=s(3),c=n(s(8)),u=n(s(32)),h=n(s(16)),p=n(s(2)),m=s(4),g=n(s(38)),b=n(s(7)),v=n(s(28));class y{constructor(){this.botInfos={},this.usersFull={},this.chatsFull={},this.chatFullPromises={},this.chatParticipantsPromises={},this.savedAvatarURLs={},a.$rootScope.$on("apiUpdate",e=>{let t=e.detail;switch(t._){case"updateChatParticipants":var s=t.participants;void 0!==(r=this.chatsFull[s.id])&&(r.participants=t.participants,a.$rootScope.$broadcast("chat_full_update",t.chat_id));break;case"updateChatParticipantAdd":if(void 0!==(r=this.chatsFull[t.chat_id])){for(var i=0,n=(s=r.participants.participants||[]).length;i<n;i++)if(s[i].user_id==t.user_id)return;s.push({_:"chatParticipant",user_id:t.user_id,inviter_id:t.inviter_id,date:a.tsNow(!0)}),r.participants.version=t.version,a.$rootScope.$broadcast("chat_full_update",t.chat_id)}break;case"updateChatParticipantDelete":var r;if(void 0!==(r=this.chatsFull[t.chat_id]))for(i=0,n=(s=r.participants.participants||[]).length;i<n;i++)if(s[i].user_id==t.user_id)return s.splice(i,1),r.participants.version=t.version,void a.$rootScope.$broadcast("chat_full_update",t.chat_id);break;case"updateChannelPinnedMessage":var d=t.channel_id,f=this.chatsFull[d];void 0!==f&&(f.pinned_msg_id=o.default.getFullMessageID(t.id,d),a.$rootScope.$broadcast("peer_pinned_message",-d))}}),a.$rootScope.$on("chat_update",e=>{let t=e.detail,s=this.chatsFull[t],i=r.default.getChat(t);if(!i.photo||!s)return;let n="chatPhotoEmpty"==i.photo._;if(s.chat_photo&&n!=("photoEmpty"==s.chat_photo._))return delete this.chatsFull[t],void a.$rootScope.$broadcast("chat_full_update",t);if(n)return;let o=i.photo.photo_small,f=d.default.choosePhotoSize(s.chat_photo,0,0);JSON.stringify(o)!==JSON.stringify(f.location)&&(delete this.chatsFull[t],a.$rootScope.$broadcast("chat_full_update",t))})}saveBotInfo(e){let t=e&&e.user_id;if(!t)return!1;let s={};return e.commands.forEach(e=>{s[e.command]=e.description}),this.botInfos[t]={id:t,version:e.version,shareText:e.share_text,description:e.description,commands:s}}getProfile(e,t){return this.usersFull[e]?Promise.resolve(this.usersFull[e]):p.default.invokeApi("users.getFullUser",{id:f.default.getUserInput(e)}).then(s=>(t&&t.phone_number?(s.user.phone=t.phone_number,(t.first_name||t.last_name)&&(s.user.first_name=t.first_name,s.user.last_name=t.last_name),f.default.saveApiUser(s.user)):f.default.saveApiUser(s.user,!0),s.profile_photo&&(s.profile_photo=d.default.savePhoto(s.profile_photo,{user_id:e})),void 0!==s.about&&(s.rAbout=l.RichTextProcessor.wrapRichText(s.about,{noLinebreaks:!0})),s.bot_info&&(s.bot_info=this.saveBotInfo(s.bot_info)),b.default.savePinnedMessage(e,s.pinned_msg_id),this.usersFull[e]=s))}getPeerBots(e){var t=[];return e>=0&&!f.default.isBot(e)||c.default.isChannel(e)&&!c.default.isMegagroup(e)?Promise.resolve(t):e>=0?this.getProfile(e).then(e=>{var s=e.bot_info;return s&&"botInfoEmpty"!=s._&&t.push(s),t}):this.getChatFull(-e).then(e=>(e.bot_info.forEach(e=>{t.push(this.saveBotInfo(e))}),t))}getChatFull(e){if(r.default.isChannel(e))return this.getChannelFull(e);if(void 0!==this.chatsFull[e]){var t=r.default.getChat(e);if(t.version==this.chatsFull[e].participants.version||t.pFlags.left)return Promise.resolve(this.chatsFull[e])}return void 0!==this.chatFullPromises[e]?this.chatFullPromises[e]:this.chatFullPromises[e]=p.default.invokeApi("messages.getFullChat",{chat_id:e}).then(t=>{r.default.saveApiChats(t.chats),f.default.saveApiUsers(t.users);const s=t.full_chat;return s&&s.chat_photo&&s.chat_photo.id&&(s.chat_photo=d.default.savePhoto(s.chat_photo)),b.default.savePinnedMessage(-e,s.pinned_msg_id),delete this.chatFullPromises[e],this.chatsFull[e]=s,a.$rootScope.$broadcast("chat_full_update",e),s})}getChatInviteLink(e,t){return this.getChatFull(e).then(s=>{if(!t&&s.exported_invite&&"chatInviteExported"==s.exported_invite._)return s.exported_invite.link;let i;return i=r.default.isChannel(e)?p.default.invokeApi("channels.exportInvite",{channel:r.default.getChannelInput(e)}):p.default.invokeApi("messages.exportChatInvite",{chat_id:e}),i.then(t=>(void 0!==this.chatsFull[e]&&(this.chatsFull[e].exported_invite=t),t.link))})}getChannelParticipants(e,t,s,i){s=s||200,i=i||0;let n=[e,(t=t||{_:"channelParticipantsRecent"})._,i,s].join("_"),o=this.chatParticipantsPromises[n];if("channelParticipantsRecent"==t._){let t=r.default.getChat(e);if(t&&t.pFlags&&(t.pFlags.kicked||t.pFlags.broadcast&&!t.pFlags.creator&&!t.admin_rights))return Promise.reject()}let d=n=>{let a=0;if(n){let e=[];n.forEach(t=>{e.push(t.user_id)}),e.sort((e,t)=>e-t),e.forEach(e=>{a=(20261*a+2147483648+e)%2147483648})}return p.default.invokeApi("channels.getParticipants",{channel:r.default.getChannelInput(e),filter:t,offset:i,limit:s,hash:a}).then(e=>"channels.channelParticipantsNotModified"==e._?n:(f.default.saveApiUsers(e.users),e.participants))},l=s=>{let n=r.default.getChat(e);if("channelParticipantsRecent"==t._&&!i&&!n.pFlags.kicked&&!n.pFlags.left){s=a.copy(s);let e,t=f.default.getSelf().id,i=s.findIndex(e=>e.user_id==t);-1!==i?(e=s[i],s.splice(i,1)):e={_:"channelParticipantSelf",user_id:t},s.unshift(e)}return s},c=a.tsNow();if(void 0!==o){let e=o[1];if(o[0]>c-6e4)return e;let t=e.then(e=>d(e).then(l));return this.chatParticipantsPromises[n]=[c,t],t}let u=d().then(l);return this.chatParticipantsPromises[n]=[c,u],u}getChannelFull(e,t){return void 0===this.chatsFull[e]||t?void 0!==this.chatFullPromises[e]?this.chatFullPromises[e]:this.chatFullPromises[e]=p.default.invokeApi("channels.getFullChannel",{channel:r.default.getChannelInput(e)}).then(t=>{r.default.saveApiChats(t.chats),f.default.saveApiUsers(t.users);let s=t.full_chat;return s&&s.chat_photo.id&&(s.chat_photo=d.default.savePhoto(s.chat_photo)),s.pinned_msg_id&&(s.pinned_msg_id=o.default.getFullMessageID(s.pinned_msg_id,e)),b.default.savePinnedMessage(-e,s.pinned_msg_id),delete this.chatFullPromises[e],this.chatsFull[e]=s,a.$rootScope.$broadcast("chat_full_update",e),s},t=>{switch(t.type){case"CHANNEL_PRIVATE":let t=r.default.getChat(e);t={_:"channelForbidden",access_hash:t.access_hash,title:t.title},u.default.processUpdateMessage({_:"updates",updates:[{_:"updateChannel",channel_id:e}],chats:[t],users:[]})}return Promise.reject(t)}):Promise.resolve(this.chatsFull[e])}invalidateChannelParticipants(e){delete this.chatsFull[e],delete this.chatFullPromises[e];for(let t in this.chatParticipantsPromises)+t.split("_")[0]==e&&delete this.chatParticipantsPromises[t];a.$rootScope.$broadcast("chat_full_update",e)}getChannelPinnedMessage(e){return this.getChannelFull(e).then(t=>{let s=t&&t.pinned_msg_id;return!!s&&h.default.get("pinned_hidden"+e).then(e=>o.default.getMessageLocalID(s)!=e&&s)})}hideChannelPinnedMessage(e,t){let s={};s["pinned_hidden"+e]=o.default.getMessageLocalID(t),h.default.set(s),a.$rootScope.$broadcast("peer_pinned_message",-e)}updateProfile(e,t,s){return p.default.invokeApi("account.updateProfile",{flags:7,first_name:e,last_name:t,about:s}).then(e=>{f.default.saveApiUser(e)})}uploadProfilePhoto(e){return p.default.invokeApi("photos.uploadProfilePhoto",{file:e}).then(e=>{f.default.saveApiUsers(e.users),p.default.getUserID().then(t=>{d.default.savePhoto(e.photo,{user_id:t}),u.default.processUpdateMessage({_:"updateShort",update:{_:"updateUserPhoto",user_id:t,date:a.tsNow(!0),photo:f.default.getUser(t).photo,previous:!0}})})})}updateUsername(e){return p.default.invokeApi("account.updateUsername",{username:e}).then(e=>{f.default.saveApiUser(e)})}removeFromAvatarsCache(e){this.savedAvatarURLs[e]&&delete this.savedAvatarURLs[e]}putAvatar(e,t,s){return i(this,void 0,void 0,(function*(){const i=c.default.getInputPeerByID(t);if(!this.savedAvatarURLs[t]){const e={_:"inputPeerPhotoFileLocation",flags:0,peer:i,volume_id:s.photo_small.volume_id,local_id:s.photo_small.local_id},n={dcID:s.dc_id,location:e};yield v.default.download(n).then(e=>{this.savedAvatarURLs[t]=URL.createObjectURL(e)})}const n=new Image;m.renderImageFromUrl(n,this.savedAvatarURLs[t])?(e.innerHTML="",e.append(n)):(n.classList.add("fade-in"),n.addEventListener("load",()=>{e.innerHTML="",e.append(n)}))}))}putPhoto(e,t,s=!1,i=""){var n;const o=c.default.getPeerPhoto(t),r=o&&!o.empty&&o.photo_small,d=!!e.firstElementChild,l=a.$rootScope.myID;if(t==l&&s)return e.innerHTML="",e.style.backgroundColor="",e.classList.add("tgico-savedmessages"),void e.classList.remove("tgico-avatar_deletedaccount");if(t>0){const s=f.default.getUser(t);if(s&&s.pFlags&&s.pFlags.deleted)return e.innerHTML="",e.style.backgroundColor="",void e.classList.add("tgico-avatar_deletedaccount")}if(!r||!d||!this.savedAvatarURLs[t]){let s,a="";if(t&&t!=l&&(a=c.default.getPeerColorByID(t)),e.innerHTML="",e.classList.remove("tgico-savedmessages","tgico-avatar_deletedaccount"),e.style.backgroundColor=a,i){const e=g.default.cleanSearchText(i,!1).split(" "),t=e.shift(),n=e.pop();s=t.charAt(0)+(n?n.charAt(0):"")}else s=null!==(n=c.default.getPeer(t).initials)&&void 0!==n?n:"";e.innerText=s.toUpperCase()}r&&this.putAvatar(e,t,o)}}t.AppProfileManager=y,t.default=new y},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppDownloadManager=void 0;const n=s(0),a=i(s(2)),o=s(24),r=s(21);class d{constructor(){this.downloads={},this.progress={},this.progressCallbacks={},this.uploadID=0,n.$rootScope.$on("download_progress",e=>{const t=e.detail;this.progress[t.fileName]=t;const s=this.progressCallbacks[t.fileName];s&&s.forEach(e=>e(t));const i=this.downloads[t.fileName];i&&i.notifyAll(t)})}getNewDeferred(e){const t=o.deferredPromise();return t.cancel=()=>{const s=new Error("Download canceled");s.name="AbortError",a.default.cancelDownload(e),this.clearDownload(e),t.reject(s),t.cancel=()=>{}},t.finally(()=>{delete this.progress[e],delete this.progressCallbacks[e]}),this.downloads[e]=t}clearDownload(e){delete this.downloads[e]}download(e){const t=r.getFileNameByLocation(e.location,{fileName:e.fileName});if(this.downloads.hasOwnProperty(t))return this.downloads[t];const s=this.getNewDeferred(t);return a.default.downloadFile(e).then(s.resolve,s.reject),s}upload(e,t){if(!t){const s=null==e?void 0:e.type;if(s){const e=this.uploadID+++"."+s.split("/")[1];t=["image/jpeg","image/png","image/bmp"].indexOf(s)>=0?"photo"+e:0===s.indexOf("audio/")||["video/ogg"].indexOf(s)>=0?"audio"+e:0===s.indexOf("video/")?"video"+e:"document"+e}else t="upload-"+this.uploadID++}const s=this.getNewDeferred(t);return a.default.uploadFile({file:e,fileName:t}).then(s.resolve,s.reject),s.finally(()=>{this.clearDownload(t)}),s}getDownload(e){return this.downloads[e]}addProgressCallback(e,t){var s;const i=this.progress[e];(null!==(s=this.progressCallbacks[e])&&void 0!==s?s:this.progressCallbacks[e]=[]).push(t),i&&t(i)}createDownloadAnchor(e,t,s){const i=document.createElement("a");i.href=e,i.download=t,i.target="_blank",i.style.position="absolute",i.style.top="1px",i.style.left="1px",document.body.append(i);try{var n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(n)}catch(t){console.error("Download click error",t);try{i.click()}catch(t){window.open(e,"_blank")}}setTimeout(()=>{i.remove(),s&&s()},100)}downloadToDisc(e,t){const s=this.download(e);return s.then(e=>{const s=URL.createObjectURL(e);this.createDownloadAnchor(s,t,()=>{URL.revokeObjectURL(s)})}),s}}t.AppDownloadManager=d,t.default=new d},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{constructor(e,t){this.prevValue="",this.timeout=0,this.onInput=()=>{if(!this.onChange)return;let e=this.input.value;e!=this.prevValue&&(this.prevValue=e,clearTimeout(this.timeout),this.timeout=setTimeout(()=>{this.onChange(e)},200))},this.onClearClick=()=>{this.value="",this.onChange&&this.onChange("")},this.container=document.createElement("div"),this.container.classList.add("input-search"),this.onChange=t,this.input=document.createElement("input"),this.input.type="text",this.input.placeholder=e,this.input.autocomplete=Math.random().toString(36).substring(7);const s=document.createElement("span");s.classList.add("tgico","tgico-search"),this.clearBtn=document.createElement("span"),this.clearBtn.classList.add("tgico","btn-icon","tgico-close"),this.input.addEventListener("input",this.onInput),this.clearBtn.addEventListener("click",this.onClearClick),this.container.append(this.input,s,this.clearBtn)}get value(){return this.input.value}set value(e){this.input.value=e,this.prevValue=e,clearTimeout(this.timeout)}remove(){clearTimeout(this.timeout),this.input.removeEventListener("input",this.onInput),this.clearBtn.removeEventListener("click",this.onClearClick)}}},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Modes=t.App=void 0,t.App={id:1025907,hash:"452b0359b988148995f22ff0f4229750",version:"0.3.0",domains:[],baseDcID:2},t.Modes={test:location.search.indexOf("test=1")>0,debug:location.search.indexOf("debug=1")>0,http:!1,ssl:!0,multipleConnections:!0}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(4);const d=new(o(s(25)).default)("page-chats",!1,()=>{const e=Promise.resolve().then(()=>a(s(12)));return e.finally(()=>{Array.from(document.getElementsByClassName("btn-menu-toggle")).forEach(e=>{e.addEventListener("click",t=>{if(!e.classList.contains("btn-menu-toggle"))return!1;let s=e.querySelector(".btn-menu");t.cancelBubble=!0,e.classList.contains("menu-open")?(e.classList.remove("menu-open"),s.classList.remove("active")):r.openBtnMenu(s)})})}),e});t.default=d},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiUpdatesManager=void 0;const n=i(s(2)),a=s(0),o=i(s(8)),r=i(s(5)),d=i(s(9)),f=s(10);class l{constructor(){this.updatesState={pendingPtsUpdates:[],pendingSeqUpdates:{},syncPending:!1,syncLoading:!0},this.channelStates={},this.attached=!1,this.log=f.logger("UPDATES",f.LogLevels.error)}popPendingSeqUpdate(){var e=this.updatesState.seq+1,t=this.updatesState.pendingSeqUpdates[e];if(!t)return!1;for(var s=t.updates,i=0,n=s.length;i<n;i++)this.saveUpdate(s[i]);return this.updatesState.seq=t.seq,t.date&&this.updatesState.date<t.date&&(this.updatesState.date=t.date),delete this.updatesState.pendingSeqUpdates[e],!this.popPendingSeqUpdate()&&this.updatesState.syncPending&&this.updatesState.syncPending.seqAwaiting&&this.updatesState.seq>=this.updatesState.syncPending.seqAwaiting&&(this.updatesState.syncPending.ptsAwaiting?delete this.updatesState.syncPending.seqAwaiting:(clearTimeout(this.updatesState.syncPending.timeout),this.updatesState.syncPending=!1)),!0}popPendingPtsUpdate(e){var t=e?this.getChannelState(e):this.updatesState;if(!t.pendingPtsUpdates.length)return!1;t.pendingPtsUpdates.sort((e,t)=>e.pts-t.pts);for(var s,i=t.pts,n=!1,a=0,o=0,r=t.pendingPtsUpdates.length;o<r;o++)(i+=(s=t.pendingPtsUpdates[o]).pts_count)>=s.pts&&(n=s.pts,a=o);if(!n)return!1;for(this.log("pop pending pts updates",n,t.pendingPtsUpdates.slice(0,a+1)),t.pts=n,o=0;o<=a;o++)s=t.pendingPtsUpdates[o],this.saveUpdate(s);return t.pendingPtsUpdates.splice(0,a+1),!t.pendingPtsUpdates.length&&t.syncPending&&(t.syncPending.seqAwaiting?delete t.syncPending.ptsAwaiting:(clearTimeout(t.syncPending.timeout),t.syncPending=!1)),!0}forceGetDifference(){this.updatesState.syncLoading||this.getDifference()}processUpdateMessage(e){var t={date:e.date,seq:e.seq,seqStart:e.seq_start};switch(e._){case"updatesTooLong":case"new_session_created":this.forceGetDifference();break;case"updateShort":this.processUpdate(e.update,t);break;case"updateShortMessage":case"updateShortChatMessage":var s=2&e.flags,i=e.from_id||(s?a.$rootScope.myID:e.user_id),n=e.chat_id?-e.chat_id:s?e.user_id:a.$rootScope.myID;this.processUpdate({_:"updateNewMessage",message:{_:"message",flags:e.flags,pFlags:e.pFlags,id:e.id,from_id:i,to_id:o.default.getOutputPeer(n),date:e.date,message:e.message,fwd_from:e.fwd_from,reply_to_msg_id:e.reply_to_msg_id,entities:e.entities},pts:e.pts,pts_count:e.pts_count},t);break;case"updatesCombined":case"updates":r.default.saveApiUsers(e.users),d.default.saveApiChats(e.chats),e.updates.forEach(e=>{this.processUpdate(e,t)});break;default:this.log.warn("Unknown update message",e)}}getDifference(){const e=this.updatesState;return e.syncLoading||(e.syncLoading=!0,e.pendingSeqUpdates={},e.pendingPtsUpdates=[]),e.syncPending&&(clearTimeout(e.syncPending.timeout),e.syncPending=!1),n.default.invokeApi("updates.getDifference",{pts:e.pts,date:e.date,qts:-1},{timeout:2147483647}).then(t=>{if("updates.differenceEmpty"==t._)return this.log("apply empty diff",t.seq),e.date=t.date,e.seq=t.seq,e.syncLoading=!1,a.$rootScope.$broadcast("stateSynchronized"),!1;r.default.saveApiUsers(t.users),d.default.saveApiChats(t.chats),t.other_updates.forEach(e=>{switch(e._){case"updateChannelTooLong":case"updateNewChannelMessage":case"updateEditChannelMessage":return void this.processUpdate(e)}this.saveUpdate(e)}),t.new_messages.forEach(t=>{this.saveUpdate({_:"updateNewMessage",message:t,pts:e.pts,pts_count:0})});const s=t.intermediate_state||t.state;e.seq=s.seq,e.pts=s.pts,e.date=s.date,"updates.differenceSlice"==t._?this.getDifference():(a.$rootScope.$broadcast("stateSynchronized"),e.syncLoading=!1)},()=>{e.syncLoading=!1})}getChannelDifference(e){var t=this.getChannelState(e);t.syncLoading||(t.syncLoading=!0,t.pendingPtsUpdates=[]),t.syncPending&&(clearTimeout(t.syncPending.timeout),t.syncPending=!1),n.default.invokeApi("updates.getChannelDifference",{channel:d.default.getChannelInput(e),filter:{_:"channelMessagesFilterEmpty"},pts:t.pts,limit:30},{timeout:2147483647}).then(s=>(t.pts=s.pts,"updates.channelDifferenceEmpty"==s._?(this.log("apply channel empty diff",s),t.syncLoading=!1,a.$rootScope.$broadcast("stateSynchronized"),!1):"updates.channelDifferenceTooLong"==s._?(this.log("channel diff too long",s),t.syncLoading=!1,delete this.channelStates[e],this.saveUpdate({_:"updateChannelReload",channel_id:e}),!1):(r.default.saveApiUsers(s.users),d.default.saveApiChats(s.chats),this.log("applying",s.other_updates.length,"channel other updates"),s.other_updates.forEach(e=>{this.saveUpdate(e)}),this.log("applying",s.new_messages.length,"channel new messages"),s.new_messages.forEach(e=>{this.saveUpdate({_:"updateNewChannelMessage",message:e,pts:t.pts,pts_count:0})}),this.log("apply channel diff",t.pts),void("updates.channelDifference"!=s._||s.pFlags.final?(this.log("finished channel get diff"),a.$rootScope.$broadcast("stateSynchronized"),t.syncLoading=!1):this.getChannelDifference(e)))),()=>{t.syncLoading=!1})}addChannelState(e,t){if(!t)throw new Error("Add channel state without pts "+e);return!(e in this.channelStates)&&(this.channelStates[e]={pts:t,pendingPtsUpdates:[],syncPending:!1,syncLoading:!1},!0)}getChannelState(e,t){return void 0===this.channelStates[e]&&this.addChannelState(e,t),this.channelStates[e]}processUpdate(e,t={}){var s=!1;switch(e._){case"updateNewChannelMessage":case"updateEditChannelMessage":s=-o.default.getPeerID(e.message.to_id);break;case"updateDeleteChannelMessages":s=e.channel_id;break;case"updateChannelTooLong":if(!((s=e.channel_id)in this.channelStates))return!1}var i,n,f=s?this.getChannelState(s,e.pts):this.updatesState;if(f.syncLoading)return!1;if("updateChannelTooLong"==e._)return(!f.lastPtsUpdateTime||f.lastPtsUpdateTime<a.tsNow()-1e4)&&this.getChannelDifference(s),!1;if("updateNewMessage"==e._||"updateEditMessage"==e._||"updateNewChannelMessage"==e._||"updateEditChannelMessage"==e._){var l=e.message,c=o.default.getPeerID(l.to_id),u=l.fwd_from||{},h=!1;if(l.from_id&&!r.default.hasUser(l.from_id,l.pFlags.post)&&(h="author")||u.from_id&&!r.default.hasUser(u.from_id,!!u.channel_id)&&(h="fwdAuthor")||u.channel_id&&!d.default.hasChat(u.channel_id,!0)&&(h="fwdChannel")||c>0&&!r.default.hasUser(c)&&(h="toPeer User")||c<0&&!d.default.hasChat(-c)&&(h="toPeer Chat"))return this.log.warn("Not enough data for message update",c,h,l),s&&d.default.hasChat(s)?this.getChannelDifference(s):this.forceGetDifference(),!1}else if(s&&!d.default.hasChat(s))return!1;if(e.pts){if(f.pts+(e.pts_count||0)<e.pts)return this.log.warn("Pts hole",f,e,s&&d.default.getChat(s)),f.pendingPtsUpdates.push(e),f.syncPending||(f.syncPending={timeout:setTimeout(()=>{s?this.getChannelDifference(s):this.getDifference()},5e3)}),f.syncPending.ptsAwaiting=!0,!1;if(e.pts>f.pts)f.pts=e.pts,i=!0,f.lastPtsUpdateTime=a.tsNow();else if(e.pts_count)return!1;s&&t.date&&this.updatesState.date<t.date&&(this.updatesState.date=t.date)}else if(!s&&t.seq>0){var p=t.seq,m=t.seqStart||p;if(m!=f.seq+1&&m>f.seq)return this.log.warn("Seq hole",f,f.syncPending&&f.syncPending.seqAwaiting),void 0===f.pendingSeqUpdates[m]&&(f.pendingSeqUpdates[m]={seq:p,date:t.date,updates:[]}),f.pendingSeqUpdates[m].updates.push(e),f.syncPending||(f.syncPending={timeout:setTimeout(()=>{this.getDifference()},5e3)}),(!f.syncPending.seqAwaiting||f.syncPending.seqAwaiting<m)&&(f.syncPending.seqAwaiting=m),!1;f.seq!=p&&(f.seq=p,t.date&&f.date<t.date&&(f.date=t.date),n=!0)}this.saveUpdate(e),i?this.popPendingPtsUpdate(s):n&&this.popPendingSeqUpdate()}saveUpdate(e){a.$rootScope.$broadcast("apiUpdate",e)}attach(e){this.attached||(this.attached=!0,n.default.setUpdatesProcessor(this.processUpdateMessage.bind(this)),e&&e.pts&&e.date&&e.seq?(Object.assign(this.updatesState,e),this.getDifference()):n.default.invokeApi("updates.getState",{},{noErrorBox:!0}).then(e=>{this.updatesState.seq=e.seq,this.updatesState.pts=e.pts,this.updatesState.date=e.date,setTimeout(()=>{this.updatesState.syncLoading=!1},1e3)}))}}t.ApiUpdatesManager=l,t.default=new l},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AppMessagesIDsManager=void 0;class i{constructor(){this.channelLocals={},this.channelsByLocals={},this.channelCurLocal=0,this.fullMsgIDModulus=4294967296}getFullMessageID(e,t){if(!t||e<=0)return e;e=this.getMessageLocalID(e);var s=this.channelLocals[t];return s||(s=++this.channelCurLocal*this.fullMsgIDModulus,this.channelsByLocals[s]=t,this.channelLocals[t]=s),s+e}getMessageIDInfo(e){if(e<this.fullMsgIDModulus)return[e,0];var t=e%this.fullMsgIDModulus;return[t,this.channelsByLocals[e-t]]}getMessageLocalID(e){return e?e%this.fullMsgIDModulus:0}splitMessageIDsByChannels(e){var t,s,i,n,a={},o={};for(t=0;t<e.length;t++)s=e[t],void 0===a[n=(i=this.getMessageIDInfo(s))[1]]&&(a[n]=[],o[n]=[]),a[n].push(i[0]),o[n].push(s);return{msgIDs:a,mids:o}}}t.AppMessagesIDsManager=i,t.default=new i},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ServerTimeManager=void 0;const n=i(s(16)),a=s(0);class o{constructor(){this.timestampNow=a.tsNow(!0),this.midnightNoOffset=this.timestampNow-this.timestampNow%86400,this.midnightOffseted=new Date,this.midnightOffset=this.midnightNoOffset-Math.floor(+this.midnightOffseted/1e3),this.serverTimeOffset=0,this.timeParams={midnightOffset:this.midnightOffset,serverTimeOffset:this.serverTimeOffset},this.midnightOffseted.setHours(0,0,0,0),n.default.get("server_time_offset").then(e=>{e&&(this.serverTimeOffset=e,this.timeParams.serverTimeOffset=e)})}}t.ServerTimeManager=o,t.default=new o},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=s(0);t.default=class{constructor(e,t=!0,s=!1){this.cancelable=t,this.tempID=0,this.detached=!0,this.promise=null,this.preloader=document.createElement("div"),this.preloader.classList.add("preloader-container"),s&&this.preloader.classList.add("preloader-streamable"),this.preloader.innerHTML=`\n <div class="you-spin-me-round">\n <svg xmlns="http://www.w3.org/2000/svg" class="preloader-circular" viewBox="25 25 50 50">\n <circle class="preloader-path-new" cx="50" cy="50" r="${s?19:23}" fill="none" stroke-miterlimit="10"/>\n </svg>\n </div>`,t?this.preloader.innerHTML+='\n <svg xmlns="http://www.w3.org/2000/svg" class="preloader-close" viewBox="0 0 20 20">\n <line x1="0" y1="20" x2="20" y2="0" stroke-width="2" stroke-linecap="round"></line>\n <line x1="0" y1="0" x2="20" y2="20" stroke-width="2" stroke-linecap="round"></line>\n </svg>':this.preloader.classList.add("preloader-swing"),this.circle=this.preloader.firstElementChild.firstElementChild.firstElementChild,e&&this.attach(e),this.cancelable&&this.preloader.addEventListener("click",e=>{i.cancelEvent(e),this.promise&&this.promise.cancel&&(this.promise.cancel(),this.detach())})}attachPromise(e){this.promise=e;const t=--this.tempID;e.finally(()=>{e.notify=null,t==this.tempID&&(this.detach(),this.promise=e=null)}),e.addNotifyListener&&e.addNotifyListener(e=>{if(t!=this.tempID)return;const s=e.done/e.total*100;this.setProgress(s)})}attach(e,t=!0,s,i=!0){s&&this.attachPromise(s),this.detached=!1,window.requestAnimationFrame(()=>{this.detached||(this.detached=!1,e[i?"append":"prepend"](this.preloader),this.cancelable&&t&&this.setProgress(0))})}detach(){this.detached=!0,this.preloader.parentElement&&window.requestAnimationFrame(()=>{this.detached&&(this.detached=!0,this.preloader.parentElement&&this.preloader.remove())})}setProgress(e){if(i.isInDOM(this.circle))if(0!=e)try{const t=this.circle.getTotalLength();this.circle.style.strokeDasharray=Math.max(5,e/100*t)+", 200"}catch(e){}else this.circle.style.strokeDasharray=""}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.PopupPeer=t.PopupElement=void 0;const n=i(s(41)),a=s(19);class o{constructor(e,t,s={}){if(this.element=document.createElement("div"),this.container=document.createElement("div"),this.header=document.createElement("div"),this.title=document.createElement("div"),this.element.classList.add("popup"),this.element.className="popup"+(e?" "+e:""),this.container.classList.add("popup-container","z-depth-1"),this.header.classList.add("popup-header"),this.title.classList.add("popup-title"),this.header.append(this.title),s.closable&&(this.closeBtn=document.createElement("span"),this.closeBtn.classList.add("btn-icon","popup-close","tgico-close"),a.ripple(this.closeBtn),this.header.prepend(this.closeBtn),this.closeBtn.addEventListener("click",()=>{this.destroy()},{once:!0})),s.withConfirm&&(this.confirmBtn=document.createElement("button"),this.confirmBtn.classList.add("btn-primary"),this.confirmBtn.innerText=s.withConfirm,this.header.append(this.confirmBtn),a.ripple(this.confirmBtn)),this.container.append(this.header),s.body&&(this.body=document.createElement("div"),this.body.classList.add("popup-body"),this.container.append(this.body)),t&&t.length){const e=document.createElement("div");e.classList.add("popup-buttons");const s=t.map(e=>{const t=document.createElement("button");return t.className="btn"+(e.isDanger?" danger":""),t.innerHTML=e.text,a.ripple(t),e.callback?t.addEventListener("click",()=>{e.callback(),this.destroy()},{once:!0}):e.isCancel&&t.addEventListener("click",()=>{this.destroy()},{once:!0}),t});e.append(...s),this.container.append(e)}this.element.append(this.container)}show(){document.body.append(this.element),this.element.offsetWidth,this.element.classList.add("active")}destroy(){this.onClose&&this.onClose(),this.element.classList.remove("active"),setTimeout(()=>{this.element.remove(),this.onCloseAfterTimeout&&this.onCloseAfterTimeout()},1e3)}}t.PopupElement=o;t.PopupPeer=class extends o{constructor(e,t={}){super("popup-peer"+(e?" "+e:""),t.buttons),this.className=e;let s=new n.default;s.setAttribute("dialog","1"),s.setAttribute("peer",""+t.peerID),s.classList.add("peer-avatar"),this.title.innerText=t.title||"",this.header.prepend(s);let i=document.createElement("p");i.classList.add("popup-description"),i.innerHTML=t.description,this.container.insertBefore(i,this.header.nextElementSibling)}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(0),a=i(s(7)),o=i(s(11)),r=s(1),d=s(24);const f=new class{constructor(){this.media={},this.waitingMediaForLoad={},this.onPause=e=>{n.$rootScope.$broadcast("audio_pause")},this.onEnded=e=>{if(this.onPause(e),this.nextMid){const e=this.media[this.nextMid];this.resolveWaitingForLoadMedia(this.nextMid),setTimeout(()=>{e.play()},0)}},this.container=document.createElement("div"),this.container.style.cssText="display: none;",document.body.append(this.container)}addMedia(e,t,s=!0){if(this.media[t])return this.media[t];const i=document.createElement("round"==e.type?"video":"audio");"round"==e.type&&i.setAttribute("playsinline",""),i.dataset.mid=""+t,i.dataset.type=e.type,i.volume=1,this.container.append(i),i.addEventListener("playing",()=>{this.playingMedia!=i&&(this.playingMedia&&!this.playingMedia.paused&&this.playingMedia.pause(),this.playingMedia=i,this.loadSiblingsMedia(e.type,t)),setTimeout(()=>{n.$rootScope.$broadcast("audio_play",{doc:e,mid:t})},0)}),i.addEventListener("pause",this.onPause),i.addEventListener("ended",this.onEnded);const a=s=>{this.nextMid==t&&this.loadSiblingsMedia(e.type,t).then(()=>{this.nextMid&&this.media[this.nextMid]&&this.media[this.nextMid].play()})};i.addEventListener("error",a);const f=d.deferredPromise();s?f.resolve():this.waitingMediaForLoad[t]=f;const l=e.supportsStreaming?Promise.resolve():o.default.downloadDocNew(e.id);return Promise.all([f,l]).then(()=>{"audio"==e.type&&e.supportsStreaming&&r.isSafari&&this.handleSafariStreamable(i),i.src=e.url},a),this.media[t]=i}handleSafariStreamable(e){e.addEventListener("play",()=>{const t=e.currentTime;e.addEventListener("progress",()=>{e.currentTime=e.duration-1,e.addEventListener("progress",()=>{e.currentTime=t,e.paused||e.play()},{once:!0})},{once:!0})})}resolveWaitingForLoadMedia(e){const t=this.waitingMediaForLoad[e];t&&(t.resolve(),delete this.waitingMediaForLoad[e])}isSafariBuffering(e){return!!e.safariBuffering}setSafariBuffering(e,t){e.safariBuffering=t}loadSiblingsMedia(e,t){const s=this.playingMedia,i=a.default.getMessage(t);return this.prevMid=this.nextMid=0,a.default.getSearch(i.peerID,"",{_:"audio"==e?"inputMessagesFilterMusic":"inputMessagesFilterRoundVoice"},t,3,0,2).then(e=>{if(this.playingMedia==s){for(let s of e.history)if(s>t)this.nextMid=s;else if(s<t){this.prevMid=s;break}[this.prevMid,this.nextMid].filter(Boolean).forEach(e=>{const t=a.default.getMessage(e);this.addMedia(t.media.document,e,!1)})}})}toggle(){this.playingMedia&&(this.playingMedia.paused?this.playingMedia.play():this.playingMedia.pause())}pause(){this.playingMedia&&!this.playingMedia.paused&&this.playingMedia.pause()}willBePlayed(e){this.willBePlayedMedia=e}};t.default=f},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(1));let a=(()=>{class e{createIndex(){return{shortIndexes:{},fullTexts:{}}}cleanSearchText(t,s=!0){const i="%"==t.charAt(0);return t=t.replace(e.badCharsRe,"").replace(e.trimRe,""),s&&(t=t.replace(/[^A-Za-z0-9]/g,e=>{const t=n.default.LatinizeMap[e];return void 0!==t?t:e})),t=t.toLowerCase(),i&&(t="%"+t),t}cleanUsername(e){return e&&e.toLowerCase()||""}indexObject(e,t,s){if(void 0!==s.fullTexts[e])return!1;if(!(t=this.cleanSearchText(t)).length)return!1;const i=s.shortIndexes;s.fullTexts[e]=t,t.split(" ").forEach(t=>{let s,n,a=Math.min(t.length,3);for(n=1;n<=a;n++)s=t.substr(0,n),void 0===i[s]?i[s]=[e]:i[s].push(e)})}search(e,t){const s=t.shortIndexes,i=t.fullTexts,n=(e=this.cleanSearchText(e)).split(" ");let a,o,r,d,f,l=!1;for(o=0;o<n.length;o++){if(a=s[n[o].substr(0,3)],!a){l=[];break}(!1===l||l.length>a.length)&&(l=a)}for(a={},r=0;r<l.length;r++){for(f=!0,d=i[l[r]],o=0;o<n.length;o++)if(-1==d.indexOf(n[o])){f=!1;break}f&&(a[l[r]]=!0)}return a}}return e.badCharsRe=/[`~!@#$%^&*()\-_=+\[\]\\|{}'";:\/?.>,<]+/g,e.trimRe=/^\s+|\s$/g,e})();t.default=new a},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(3),a=i(s(7)),o=i(s(8)),r=i(s(2)),d=i(s(32)),f=s(0),l=s(10),c=i(s(5));const u=new class{constructor(){this.polls={},this.results={},this.log=l.logger("POLLS",l.LogLevels.error),f.$rootScope.$on("apiUpdate",e=>{let t=e.detail;this.handleUpdate(t)})}handleUpdate(e){switch(e._){case"updateMessagePoll":{this.log("updateMessagePoll:",e);let t=e.poll;if(!t)break;t=this.savePoll(t,e.results),f.$rootScope.$broadcast("poll_update",{poll:t,results:e.results});break}}}savePoll(e,t){const s=e.id;return this.polls[s]?(e=Object.assign(this.polls[s],e),this.saveResults(e,t),e):(this.polls[s]=e,e.rQuestion=n.RichTextProcessor.wrapEmojiText(e.question),e.rReply=n.RichTextProcessor.wrapEmojiText("📊")+" "+(e.rQuestion||"poll"),e.chosenIndexes=[],this.saveResults(e,t),e)}saveResults(e,t){var s;this.results[e.id]=t,e.chosenIndexes.length=0,(null===(s=null==t?void 0:t.results)||void 0===s?void 0:s.length)&&t.results.forEach((t,s)=>{var i;(null===(i=t.pFlags)||void 0===i?void 0:i.chosen)&&e.chosenIndexes.push(s)})}getPoll(e){return{poll:this.polls[e],results:this.results[e]}}sendVote(e,t){const s=a.default.getMessage(e),i=s.media.poll,n=t.map(e=>i.answers[e].option),f=o.default.getInputPeerByID(s.peerID),l=s.id;return r.default.invokeApi("messages.sendVote",{peer:f,msg_id:l,options:n}).then(e=>{this.log("sendVote updates:",e),d.default.processUpdateMessage(e)})}getResults(e){const t=a.default.getMessage(e),s=o.default.getInputPeerByID(t.peerID),i=t.id;return r.default.invokeApi("messages.getPollResults",{peer:s,msg_id:i}).then(e=>{d.default.processUpdateMessage(e),this.log("getResults updates:",e)})}getVotes(e,t,s,i=20){const n=a.default.getMessage(e),d=o.default.getInputPeerByID(n.peerID),f=n.id;let l=0;return t&&(l|=1),s&&(l|=2),r.default.invokeApi("messages.getPollVotes",{flags:l,peer:d,id:f,option:t,offset:s,limit:i}).then(e=>(this.log("getPollVotes messages:",e),c.default.saveApiUsers(e.users),e))}};t.default=u},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppStateManager=void 0;const n=i(s(16)),a=i(s(7)),o=i(s(33)),r=i(s(8)),d=i(s(9)),f=i(s(5)),l=i(s(32)),c=s(0),u=s(10);class h{constructor(){this.log=u.logger("STATE"),this.state={},this.loadSavedState()}loadSavedState(){return this.loaded?this.loaded:this.loaded=new Promise((e,t)=>{n.default.get("state").then(t=>{var s;const i=Date.now();(null!==(s=null==t?void 0:t.stateCreatedTime)&&void 0!==s?s:0)+864e5<i&&(this.log("will refresh state",t.stateCreatedTime,i),["dialogs","allDialogsLoaded","messages","contactsList","stateCreatedTime","updates","maxSeenMsgID","filters","topPeers"].forEach(e=>{delete t[e]}));const{dialogs:n,allDialogsLoaded:r,peers:c,messages:u,contactsList:h,maxSeenMsgID:p,updates:m,filters:g}=t;if(this.state=t||{},this.state.peers=c||{},this.state.hasOwnProperty("stateCreatedTime")||(this.state.stateCreatedTime=Date.now()),this.log("state res",n,u),p&&!o.default.getMessageIDInfo(p)[1]&&(a.default.maxSeenID=p),c)for(let e in c){let t=c[e];+e<0?d.default.saveApiChat(t):f.default.saveApiUser(t)}if(h&&Array.isArray(h)&&h.length&&(h.forEach(e=>{f.default.pushContact(e)}),f.default.contactsFillPromise=Promise.resolve(f.default.contactsList)),u){a.default.saveMessages(u);for(let e of u)e.media&&a.default.wrapSingleMessage(e.mid,!0)}if(r&&(a.default.dialogsStorage.allDialogsLoaded=r),g)for(const e in g)a.default.filtersStorage.saveDialogFilter(g[e],!1);n&&n.forEachReverse(e=>{a.default.saveConversation(e)}),l.default.attach(null!=m?m:null),e(t)}).catch(e).finally(()=>{setInterval(()=>this.saveState(),1e4)})})}getState(){return this.loadSavedState()}saveState(){var e,t;const s=[],i=[],o=this.state.peers;for(const n in a.default.dialogsStorage.byFolders){const d=a.default.dialogsStorage.getFolder(+n);for(let n of d){const d=a.default.historiesStorage[n.peerID],f=[].concat(null!==(e=null==d?void 0:d.pending)&&void 0!==e?e:[],null!==(t=null==d?void 0:d.history)&&void 0!==t?t:[]);n=c.copy(n);let l=0;for(const e of f){const t=a.default.getMessage(e);if(t.id>0){s.push(t),t.fromID!=n.peerID&&(o[t.fromID]=r.default.getPeer(t.fromID)),n.top_message=t.mid;break}t.pFlags&&t.pFlags.unread&&++l}l&&n.unread_count&&(n.unread_count-=l),i.push(n),o[n.peerID]=r.default.getPeer(n.peerID)}}const d=l.default.updatesState,u={seq:d.seq,pts:d.pts,date:d.date},h=[...f.default.contactsList];for(const e of h)o[e]||(o[e]=f.default.getUser(e));const p=a.default.filtersStorage.filters;n.default.set({state:Object.assign({},this.state,{dialogs:i,messages:s,allDialogsLoaded:a.default.dialogsStorage.allDialogsLoaded,peers:o,contactsList:h,filters:p,updates:u,maxSeenMsgID:a.default.maxSeenID})})}pushToState(e,t){this.state[e]=t}pushPeer(e){this.state.peers[e]=r.default.getPeer(e)}}t.AppStateManager=h;const p=new h;t.default=p},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(27));s(0).$rootScope.$on("avatar_update",e=>{let t=e.detail;n.default.removeFromAvatarsCache(t),Array.from(document.querySelectorAll('avatar-element[peer="'+t+'"]')).forEach(e=>{e.update()})});class a extends HTMLElement{constructor(){super(),this.isDialog=!1}connectedCallback(){this.isDialog=!!this.getAttribute("dialog")}disconnectedCallback(){}static get observedAttributes(){return["peer","dialog","peer-title"]}attributeChangedCallback(e,t,s){if("peer"==e){if(this.peerID==+s)return;this.peerID=+s,this.update()}else"peer-title"==e?this.peerTitle=s:"dialog"==e&&(this.isDialog=!!+s)}update(){n.default.putPhoto(this,this.peerID,this.isDialog,this.peerTitle)}adoptedCallback(){}}t.default=a,customElements.define("avatar-element",a)},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.SearchGroup=void 0;const n=i(s(15)),a=i(s(6)),o=i(s(33)),r=i(s(5)),d=i(s(8)),f=i(s(7)),l=s(0),c=s(4),u=i(s(9));t.SearchGroup=class{constructor(e,t,s=!0,i,a=!0){this.name=e,this.type=t,this.clearable=s,this.list=document.createElement("ul"),this.container=document.createElement("div"),i&&(this.container.className=i),e&&(this.nameEl=document.createElement("div"),this.nameEl.classList.add("search-group__name"),this.nameEl.innerText=e,this.container.append(this.nameEl)),this.container.classList.add("search-group","search-group-"+t),this.container.append(this.list),this.container.style.display="none",a&&n.default.setListClickListener(this.list)}clear(){this.container.style.display="none",this.clearable&&(this.list.innerHTML="")}setActive(){this.container.style.display=""}};t.default=class{constructor(e,t,s,i){this.container=e,this.searchInput=t,this.searchGroups=s,this.onSearch=i,this.minMsgID=0,this.loadedCount=-1,this.foundCount=-1,this.offsetRate=0,this.loadedContacts=!1,this.searchPromise=null,this.searchTimeout=0,this.query="",this.listsContainer=null,this.peerID=0,this.scrollable=new a.default(this.container),this.listsContainer=this.scrollable.container;for(let e in this.searchGroups)this.listsContainer.append(this.searchGroups[e].container);this.searchGroups.messages&&this.scrollable.setVirtualContainer(this.searchGroups.messages.list),this.searchInput.onChange=e=>{this.query=e,this.reset(!1),this.searchMore()},this.scrollable.onScrolledBottom=()=>{this.query.trim()&&(this.searchTimeout||(this.searchTimeout=setTimeout(()=>{this.searchMore(),this.searchTimeout=0},0)))}}reset(e=!0){e&&(this.searchInput.value="",this.query="",this.peerID=0),this.minMsgID=0,this.loadedCount=-1,this.foundCount=-1,this.offsetRate=0,this.loadedContacts=!1;for(let e in this.searchGroups)this.searchGroups[e].clear();this.searchPromise=null}beginSearch(e){e&&(this.peerID=e),this.searchInput.input.focus()}searchMore(){if(this.searchPromise)return this.searchPromise;const e=this.query;if(!e.trim())return void(this.onSearch&&this.onSearch(0));if(-1!=this.foundCount&&this.loadedCount>=this.foundCount)return Promise.resolve();const t=o.default.getMessageIDInfo(this.minMsgID)[0]||0;return this.peerID||t||this.loadedContacts||r.default.searchContacts(e,20).then(t=>{if(this.searchInput.value!=e)return;this.loadedContacts=!0;let s=(t,s,i=!1)=>{t.forEach(t=>{let a=d.default.getPeerID(t),o=d.default.getPeer(a),h=f.default.getDialogByPeerID(a)[0];h||(h={peerID:a,pFlags:{},peer:o});let{dialog:p,dom:m}=n.default.addDialog(h,s.list,!1);if(i&&(o.participants_count||o.participants)){let t=new RegExp(`(${l.escapeRegExp(e)})`,"gi");m.titleSpan.innerHTML=m.titleSpan.innerHTML.replace(t,"<i>$1</i>"),m.lastMessageSpan.innerText=u.default.getChatMembersString(-a)}else{let e=d.default.getPeerUsername(a);if(e)e="@"+e;else{let t=r.default.getUser(a);t&&t.phone&&(e="+"+c.formatPhoneNumber(t.phone).formatted)}m.lastMessageSpan.innerHTML="<i>"+e+"</i>"}}),t.length?s.setActive():s.clear()};s(t.my_results,this.searchGroups.contacts,!0),s(t.results,this.searchGroups.globalContacts)}),this.searchPromise=f.default.getSearch(this.peerID,e,null,t,20,this.offsetRate).then(s=>{if(this.searchPromise=null,this.searchInput.value!=e)return;console.log("input search result:",this.peerID,e,null,t,20,s);const{count:i,history:a,next_rate:o}=s;a[0]==this.minMsgID&&a.shift();this.searchGroups.messages.setActive(),a.forEach(t=>{const s=f.default.getMessage(t);let i=f.default.getDialogByPeerID(s.peerID)[0];i||(i={peerID:s.peerID,pFlags:{},peer:s.to_id});const{dialog:a,dom:o}=n.default.addDialog(i,this.scrollable,!1);n.default.setLastMessage(a,s,o,e)}),this.minMsgID=a[a.length-1],this.offsetRate=o,this.loadedCount+=a.length,-1==this.loadedCount&&(this.loadedCount=0),-1==this.foundCount&&(this.foundCount=i,this.onSearch&&this.onSearch(this.foundCount))}).catch(e=>{console.error("search error",e),this.searchPromise=null})}}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(s(16)),o=n(s(2)),r=n(s(11)),d=s(0);const f=new class{constructor(){this.documents={},this.stickerSets={},this.hashes={featured:{},search:{}},a.default.get("stickerSets").then(e=>{if(e){for(let t in e){let s=e[t];this.saveStickers(s.documents)}this.stickerSets=e}this.getStickerSet({id:"emoji",access_hash:""},{overwrite:!0})}),d.$rootScope.$on("apiUpdate",e=>{const t=e.detail;switch(t._){case"updateNewStickerSet":this.saveStickerSet(t.stickerset,t.stickerset.set.id),d.$rootScope.$broadcast("stickers_installed",t.stickerset.set)}})}saveSticker(e){return this.documents[e.id]?this.documents[e.id]:(e=r.default.saveDoc(e),this.documents[e.id]=e,e)}saveStickers(e){e.forEach((t,s)=>{e[s]=this.saveSticker(t)})}getSticker(e){return this.documents[e]}getStickerSet(e,t={}){var s;return i(this,void 0,void 0,(function*(){if(this.stickerSets[e.id]&&!t.overwrite&&(null===(s=this.stickerSets[e.id].documents)||void 0===s?void 0:s.length))return this.stickerSets[e.id];let i=o.default.invokeApi("messages.getStickerSet",{stickerset:this.getStickerSetInput(e)}),n=yield i;return this.saveStickerSet(n,e.id),n}))}getRecentStickers(){return i(this,void 0,void 0,(function*(){let e=yield o.default.invokeApi("messages.getRecentStickers",{flags:0,hash:0});return this.saveStickers(e.stickers),e}))}getAnimatedEmojiSticker(e){let t=this.stickerSets.emoji;if(t&&t.documents)return e=e.replace(/\ufe0f/g,"").replace(/🏻|🏼|🏽|🏾|🏿/g,""),t.documents.find(t=>t.stickerEmojiRaw==e)}saveStickerSet(e,t){const s={set:e.set,packs:e.packs,documents:e.documents};this.stickerSets[t]?Object.assign(this.stickerSets[t],s):this.stickerSets[t]=s,this.saveStickers(e.documents),this.saveSetsTimeout||(this.saveSetsTimeout=setTimeout(()=>{const e={};for(const t in this.stickerSets){const s=this.stickerSets[t];(s.set.installed_date||"emoji"==t)&&(e[t]=s)}a.default.set({stickerSets:e}),this.saveSetsTimeout=0},100))}getStickerSetThumbDownloadOptions(e){var t;const s=e.thumb,i=e.thumb_dc_id,n=null===(t=e.pFlags)||void 0===t?void 0:t.animated;return{dcID:i,location:{_:"inputStickerSetThumb",stickerset:this.getStickerSetInput(e),volume_id:s.location.volume_id,local_id:s.location.local_id},size:s.size,mimeType:n?"application/x-tgsticker":"image/webp"}}getStickerSetInput(e){return"emoji"==e.id?{_:"inputStickerSetAnimatedEmoji"}:{_:"inputStickerSetID",id:e.id,access_hash:e.access_hash}}getFeaturedStickers(){var e,t;return i(this,void 0,void 0,(function*(){const s=yield o.default.invokeApi("messages.getFeaturedStickers",{hash:(null===(e=this.hashes.featured)||void 0===e?void 0:e.hash)||0}),i=null!==(t=this.hashes.featured)&&void 0!==t?t:this.hashes.featured={};return"messages.featuredStickersNotModified"!=s._&&(i.hash=s.hash,i.result=s.sets),i.result.forEach(e=>{this.saveStickerSet({set:e.set,documents:[],packs:[]},e.set.id)}),i.result}))}toggleStickerSet(e){return i(this,void 0,void 0,(function*(){if(e.installed_date){if(yield o.default.invokeApi("messages.uninstallStickerSet",{stickerset:this.getStickerSetInput(e)}))return delete e.installed_date,d.$rootScope.$broadcast("stickers_deleted",e),!0}else{if(yield o.default.invokeApi("messages.installStickerSet",{stickerset:this.getStickerSetInput(e),archived:!1}))return e.installed_date=Date.now()/1e3|0,d.$rootScope.$broadcast("stickers_installed",e),!0}return!1}))}searchStickerSets(e,t=!0){var s,n;return i(this,void 0,void 0,(function*(){const i=t?1:0,a=yield o.default.invokeApi("messages.searchStickerSets",{flags:i,exclude_featured:t,q:e,hash:(null===(s=this.hashes.search[e])||void 0===s?void 0:s.hash)||0}),r=null!==(n=this.hashes.search[e])&&void 0!==n?n:this.hashes.search[e]={};"messages.foundStickerSetsNotModified"!=a._&&(r.hash=a.hash,r.result=a.sets),r.result.forEach(e=>{this.saveStickerSet({set:e.set,documents:[],packs:[]},e.set.id)});const d=[];for(let t in this.stickerSets){const{set:s}=this.stickerSets[t];s.title.toLowerCase().includes(e.toLowerCase())&&!r.result.find(e=>e.set.id==s.id)&&d.push({_:"stickerSetCovered",set:s,cover:null})}return r.result.concat(d)}))}cleanup(){return i(this,void 0,void 0,(function*(){yield a.default.remove("stickerSets")}))}};t.default=f},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toast=void 0;const i=document.createElement("div");i.classList.add("toast"),t.toast=function(e){i.innerHTML=e,document.body.append(i),i.dataset.timeout&&clearTimeout(+i.dataset.timeout),i.dataset.timeout=""+setTimeout(()=>{i.remove(),delete i.dataset.timeout},3e3)}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.PopupAvatar=void 0;const n=i(s(86)),a=i(s(28));class o{constructor(){this.container=document.getElementById("popup-avatar"),this.input=this.container.querySelector("input"),this.cropContainer=this.container.querySelector(".crop"),this.closeBtn=this.container.querySelector(".popup-close"),this.image=new Image,this.cropper={crop:()=>{},removeHandlers:()=>{}},this.container.style.display="",this.cropContainer.append(this.image),this.input.addEventListener("change",e=>{var t=e.target.files[0];if(t){var s=new FileReader;s.onload=e=>{var t=e.target.result;this.image=new Image,this.cropContainer.append(this.image),this.image.src=t,this.image.onload=()=>{this.container.classList.remove("hide"),this.container.offsetWidth,this.container.classList.add("active"),this.cropper=n.default(this.image,this.canvas),this.input.value=""}},s.readAsDataURL(t)}},!1),this.container.querySelector(".btn-crop").addEventListener("click",()=>{this.cropper.crop(),this.closeBtn.click(),this.canvas.toBlob(e=>{this.blob=e,this.darkenCanvas(),this.resolve()},"image/jpeg",1)}),this.closeBtn.addEventListener("click",()=>{setTimeout(()=>{this.cropper.removeHandlers(),this.image&&this.image.remove(),this.container.classList.add("hide")},200)})}resolve(){this.onCrop(()=>a.default.upload(this.blob))}open(e,t){this.canvas=e,this.onCrop=t,this.input.click()}darkenCanvas(){let e=this.canvas.getContext("2d");e.fillStyle="rgba(0, 0, 0, 0.3)",e.fillRect(0,0,this.canvas.width,this.canvas.height)}}t.PopupAvatar=o,t.default=new o},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.EmoticonsDropdown=t.EMOTICONSSTICKERGROUP=void 0;const a=n(s(23)),o=n(s(97)),r=s(1),d=s(0),f=s(26),l=n(s(18)),c=n(s(22)),u=n(s(12)),h=n(s(98)),p=n(s(99)),m=n(s(64));t.EMOTICONSSTICKERGROUP="emoticons-dropdown";let g=(()=>{class e{constructor(){this.tabID=-1,this.events={onClose:[],onCloseAfter:[],onOpen:[],onOpenAfter:[]},this.toggle=s=>i(this,void 0,void 0,(function*(){const i=!!this.element.style.display&&void 0===s||s;if(this.init){if(!i)return;this.init(),this.init=null}r.touchSupport?(this.toggleEl.classList.toggle("flip-icon",i),i&&(u.default.chatInputC.saveScroll(),document.activeElement.blur(),yield new Promise(e=>{setTimeout(e,100)}))):this.toggleEl.classList.toggle("active",s),this.element.style.display&&void 0===s||s?(this.events.onOpen.forEach(e=>e()),e.lazyLoadQueue.lockIntersection(),l.default.lockIntersectionGroup(t.EMOTICONSSTICKERGROUP),this.element.style.display="",this.element.offsetLeft,this.element.classList.add("active"),clearTimeout(this.displayTimeout),this.displayTimeout=setTimeout(()=>{l.default.unlockIntersectionGroup(t.EMOTICONSSTICKERGROUP),e.lazyLoadQueue.unlockIntersection(),this.events.onOpenAfter.forEach(e=>e())},r.touchSupport?0:200)):(this.events.onClose.forEach(e=>e()),e.lazyLoadQueue.lockIntersection(),l.default.lockIntersectionGroup(t.EMOTICONSSTICKERGROUP),l.default.checkAnimations(!0,t.EMOTICONSSTICKERGROUP),this.element.classList.remove("active"),clearTimeout(this.displayTimeout),this.displayTimeout=setTimeout(()=>{this.element.style.display="none",l.default.unlockIntersectionGroup(t.EMOTICONSSTICKERGROUP),e.lazyLoadQueue.unlockIntersection(),this.events.onCloseAfter.forEach(e=>e())},r.touchSupport?0:200))})),this.element=document.getElementById("emoji-dropdown");let s=!0;this.toggleEl=document.getElementById("toggle-emoticons"),r.touchSupport?this.toggleEl.addEventListener("click",()=>{s?(s=!1,this.toggle(!0)):this.toggle()}):this.toggleEl.onmouseover=e=>{clearTimeout(this.displayTimeout),s&&(this.toggleEl.onmouseout=this.element.onmouseout=e=>{if(!this.element.classList.contains("active"))return;const t=e.toElement;t&&d.findUpClassName(t,"emoji-dropdown")||(clearTimeout(this.displayTimeout),this.displayTimeout=setTimeout(()=>{this.toggle(!1)},200))},this.element.onmouseover=e=>{clearTimeout(this.displayTimeout)},s=!1),this.toggle(!0)}}init(){this.emojiTab=new h.default,this.stickersTab=new p.default,this.gifsTab=new o.default,this.tabs={0:this.emojiTab,1:this.stickersTab,2:this.gifsTab},this.container=this.element.querySelector(".emoji-container .tabs-container"),this.tabsEl=this.element.querySelector(".emoji-tabs"),f.horizontalMenu(this.tabsEl,this.container,e=>{l.default.checkAnimations(!0,t.EMOTICONSSTICKERGROUP),this.tabID=e,this.searchButton.classList.toggle("hide",0==this.tabID),this.deleteBtn.classList.toggle("hide",0!=this.tabID)},()=>{const e=this.tabs[this.tabID];e.init&&e.init(),e.onCloseAfterTimeout&&e.onCloseAfterTimeout(),l.default.checkAnimations(!1,t.EMOTICONSSTICKERGROUP)}),this.searchButton=this.element.querySelector(".emoji-tabs-search"),this.searchButton.addEventListener("click",()=>{1==this.tabID?c.default.stickersTab.init():c.default.gifsTab.init()}),this.deleteBtn=this.element.querySelector(".emoji-tabs-delete"),this.deleteBtn.addEventListener("click",()=>{var e;const t=u.default.chatInputC.messageInput;(null===(e=t.lastChild)||void 0===e?void 0:e.tagName)?t.lastElementChild.remove():t.lastChild&&(t.lastChild.textContent.length?t.lastChild.textContent=t.lastChild.textContent.slice(0,-1):t.lastChild.remove());const s=new Event("input",{bubbles:!0,cancelable:!0});u.default.chatInputC.messageInput.dispatchEvent(s)}),this.tabsEl.firstElementChild.children[1].click(),this.tabs[0].init()}}return e.lazyLoadQueue=new a.default,e.menuOnClick=(e,t,s)=>{let i=0,n=-1;const a=t=>t!=i&&(e.children[i].classList.remove("active"),e.children[t].classList.add("active"),i=t,!0),o=new m.default(t.container,(i,o)=>{if(Math.abs(n-t.container.scrollTop)<=1)return;n=-1;const r=d.whichChild(o);!i&&r||(a(r),s&&(r<e.childElementCount-4?s.container.scrollLeft=47*(r-3):s.container.scrollLeft=47*r))});return e.addEventListener("click",e=>{let s=e.target;if(s=d.findUpTag(s,"LI"),!s)return;const i=d.whichChild(s);if(!a(i))return;const o=(t.splitUp||t.container).children[i].offsetTop+1;t.container.scrollTop=n=o}),o},e.onMediaClick=e=>{let t=e.target;if(t=d.findUpTag(t,"DIV"),!t)return;const s=t.dataset.docID;s&&(u.default.chatInputC.sendMessageWithDocument(s)?b.toggle(!1):console.warn("got no doc by id:",s))},e})();t.EmoticonsDropdown=g;const b=new g;t.default=b},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSafari=t.isAppleMobile=t.isAndroid=t.isApple=t.userAgent=void 0,t.userAgent=navigator?navigator.userAgent:null,t.isApple=-1!=navigator.userAgent.search(/OS X|iPhone|iPad|iOS/i),t.isAndroid=-1!=navigator.userAgent.toLowerCase().indexOf("android");const i="undefined"!=typeof window?window:self;t.isAppleMobile=(/iPad|iPhone|iPod/.test(navigator.platform)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!i.MSStream,t.isSafari=!!("safari"in i)||!(!t.userAgent||!(/\b(iPad|iPhone|iPod)\b/.test(t.userAgent)||t.userAgent.match("Safari")&&!t.userAgent.match("Chrome")))},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(4),a=i(s(6)),o=s(3),r=i(s(1)),d=s(0),f=i(s(77)),l=i(s(104)),c=i(s(2)),u=i(s(25)),h=s(30);let p=null;const m=new u.default("page-sign",!0,()=>{h.Modes.test&&(r.default.Countries.push({name:"Test Country",phoneCode:"999 66",code:"TC",emoji:"🤔",pattern:"999 66 XXX XX"}),console.log("Added test country to list!"));const e=r.default.Countries.filter(e=>e.emoji).sort((e,t)=>e.name.localeCompare(t.name));let t=null;var s=m.pageEl.querySelector('input[name="countryCode"]'),i=s.parentElement,u=document.createElement("div");u.classList.add("select-wrapper","z-depth-3","hide");var g=document.createElement("ul");u.appendChild(g);new a.default(u);let b=!1;m.pageEl.querySelector(".a-qr").addEventListener("click",()=>{l.default.mount()});let v,y=()=>{y=null,e.forEach(e=>{b=!0;let t=e.emoji,s=[];e.phoneCode.split(" and ").forEach(i=>{let n=document.createElement("li");var a=document.createElement("span");let r=o.RichTextProcessor.wrapRichText(t);n.appendChild(a),a.outerHTML=r,n.append(e.name);var d=document.createElement("span");d.classList.add("phone-code"),d.innerText="+"+i,n.appendChild(d),s.push(n),g.append(n)}),e.li=s}),g.addEventListener("mousedown",(function(i){let n=i.target;"LI"!=n.tagName&&(n=d.findUpTag(n,"LI"));let a=n.childNodes[1].textContent,o=n.querySelector(".phone-code").innerText;s.value=a,t=e.find(e=>e.name==a),w.value=o,setTimeout(()=>w.focus(),0)})),i.appendChild(u)};y(),s.addEventListener("focus",(function(t){y?y():e.forEach(e=>{e.li.forEach(e=>e.style.display="")}),clearTimeout(v),u.classList.remove("hide"),u.offsetWidth,u.classList.add("active")})),s.addEventListener("blur",(function(e){u.classList.remove("active"),v=setTimeout(()=>{u.classList.add("hide")},200),e.cancelBubble=!0}),{capture:!0}),s.addEventListener("keyup",(function(t){if(t.ctrlKey||"Control"==t.key)return!1;let s=this.value.toLowerCase(),i=[];e.forEach(e=>{let t=-1!==e.name.toLowerCase().indexOf(s);e.li.forEach(e=>e.style.display=t?"":"none"),t&&i.push(e)}),0==i.length&&e.forEach(e=>{e.li.forEach(e=>e.style.display="")})})),m.pageEl.querySelector(".arrow-down").addEventListener("mousedown",(function(e){e.cancelBubble=!0,e.preventDefault(),s.matches(":focus")?s.blur():s.focus()}));e.slice().sort((e,t)=>t.phoneCode.length-e.phoneCode.length);let w=m.pageEl.querySelector('input[name="phone"]');const _=w.nextElementSibling;w.addEventListener("input",(function(e){this.classList.remove("error"),_.innerText="Phone Number";let{formatted:i,country:a}=n.formatPhoneNumber(this.value);this.value=i?"+"+i:"";let o=a?a.name:"";o==s.value||t&&a&&t.phoneCode==a.phoneCode||(s.value=o,t=a),a||this.value.length-1>1?p.style.visibility="":p.style.visibility="hidden"})),w.addEventListener("keypress",(function(e){return p.style.visibility||"Enter"!=e.key?/\D/.test(e.key)?(e.preventDefault(),!1):void 0:p.click()})),p.addEventListener("click",(function(e){this.setAttribute("disabled","true"),this.textContent="PLEASE WAIT...",n.putPreloader(this);let t=w.value;c.default.invokeApi("auth.sendCode",{phone_number:t,api_id:h.App.id,api_hash:h.App.hash,settings:{_:"codeSettings",flags:0}}).then(e=>{f.default.mount(Object.assign(e,{phone_number:t}))}).catch(e=>{switch(this.removeAttribute("disabled"),this.innerText="NEXT",e.type){case"PHONE_NUMBER_INVALID":_.innerText="Phone Number Invalid",w.classList.add("error");break;default:console.error("auth.sendCode error:",e),this.innerText=e.type}})}));c.default.invokeApi("help.getNearestDc").then(e=>(e.nearest_dc!=e.this_dc&&c.default.getNetworker(e.nearest_dc),e)).then(i=>{let n=e.find(e=>e.code==i.country);n&&(s.value.length||w.value.length||(s.value=n.name,t=n,w.value="+"+n.phoneCode.split(" and ").shift()))})},()=>{p||(p=m.pageEl.querySelector("button")),p.textContent="NEXT",p.removeAttribute("disabled")});t.default=m},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.MediaProgressLine=t.ProgressLine=void 0;const n=s(0),a=s(1),o=i(s(37)),r=s(47);class d{constructor(e=0){this.duration=1,this.mousedown=!1,this.events={},this.onMouseMove=e=>{this.mousedown&&this.scrub(e)},this.onMouseDown=e=>{var t;this.scrub(e),this.mousedown=!0,(null===(t=this.events)||void 0===t?void 0:t.onMouseDown)&&this.events.onMouseDown(e)},this.onMouseUp=e=>{var t;this.mousedown=!1,(null===(t=this.events)||void 0===t?void 0:t.onMouseUp)&&this.events.onMouseUp(e)},this.container=document.createElement("div"),this.container.classList.add("progress-line"),this.filled=document.createElement("div"),this.filled.classList.add("progress-line__filled");const t=this.seek=document.createElement("input");t.classList.add("progress-line__seek"),t.value=""+e,t.setAttribute("min","0"),t.type="range",t.step="0.1",t.max=""+1e3*this.duration,e>0&&this.setProgress(e),this.container.append(this.filled,t)}setHandlers(e){this.events=e}setListeners(){this.container.addEventListener("mousemove",this.onMouseMove),this.container.addEventListener("mousedown",this.onMouseDown),this.container.addEventListener("mouseup",this.onMouseUp),a.touchSupport&&(this.container.addEventListener("touchmove",this.onMouseMove),this.container.addEventListener("touchstart",this.onMouseDown),this.container.addEventListener("touchend",this.onMouseUp))}setProgress(e){this.setFilled(e),this.seek.value=""+1e3*e}setFilled(e){let t=e/this.duration;t=Math.max(0,Math.min(1,t)),this.filled.style.transform="scaleX("+t+")"}scrub(e){var t;let s;if(e instanceof MouseEvent)s=e.offsetX;else{const t=e.target.getBoundingClientRect();s=e.targetTouches[0].pageX-t.left}const i=s/this.container.offsetWidth*this.duration;return this.setFilled(i),(null===(t=this.events)||void 0===t?void 0:t.onScrub)&&this.events.onScrub(i),i}removeListeners(){this.container.removeEventListener("mousemove",this.onMouseMove),this.container.removeEventListener("mousedown",this.onMouseDown),this.container.removeEventListener("mouseup",this.onMouseUp),a.touchSupport&&(this.container.removeEventListener("touchmove",this.onMouseMove),this.container.removeEventListener("touchstart",this.onMouseDown),this.container.removeEventListener("touchend",this.onMouseUp)),this.events={}}}t.ProgressLine=d;class f extends d{constructor(e,t=!1){super(),this.media=e,this.streamable=t,this.stopAndScrubTimeout=0,this.progressRAF=0,this.onLoadedData=()=>{this.duration=this.media.duration,this.seek.setAttribute("max",""+1e3*this.duration)},this.onEnded=()=>{this.setProgress()},this.onPlay=()=>{let e=()=>{this.setProgress(),this.progressRAF=this.media.paused?0:window.requestAnimationFrame(e)};this.progressRAF&&window.cancelAnimationFrame(this.progressRAF),this.streamable&&this.setLoadProgress(),this.progressRAF=window.requestAnimationFrame(e)},this.onProgress=e=>{this.setLoadProgress()},t&&(this.filledLoad=document.createElement("div"),this.filledLoad.classList.add("progress-line__filled","progress-line__loaded"),this.container.prepend(this.filledLoad)),(!e.paused||e.currentTime>0)&&this.onPlay(),this.setSeekMax(),this.setListeners(),this.setHandlers({onMouseDown:e=>{this.stopAndScrubTimeout&&clearTimeout(this.stopAndScrubTimeout),this.stopAndScrubTimeout=setTimeout(()=>{!this.media.paused&&this.media.pause(),this.stopAndScrubTimeout=0},150)},onMouseUp:e=>{this.stopAndScrubTimeout&&(clearTimeout(this.stopAndScrubTimeout),this.stopAndScrubTimeout=0),this.media.paused&&this.media.play()}})}scrub(e){const t=super.scrub(e);return this.media.currentTime=t,t}setLoadProgress(){if(o.default.isSafariBuffering(this.media))return;const e=this.media.buffered,t=e.length,s=this.media.currentTime;let i=0,n=0;for(let a=0;a<t;++a){const t=e.start(a);s>=t&&t>=i&&(i=t,n=e.end(a))}const a=this.media.duration?n/this.media.duration:0;this.filledLoad.style.transform="scaleX("+a+")"}setSeekMax(){this.duration=this.media.duration,this.duration>0?this.onLoadedData():this.media.addEventListener("loadeddata",this.onLoadedData)}setProgress(){if(o.default.isSafariBuffering(this.media))return;const e=this.media.currentTime;super.setProgress(e)}setListeners(){super.setListeners(),this.media.addEventListener("ended",this.onEnded),this.media.addEventListener("play",this.onPlay),this.streamable&&this.media.addEventListener("progress",this.onProgress)}removeListeners(){super.removeListeners(),this.media.removeEventListener("loadeddata",this.onLoadedData),this.media.removeEventListener("ended",this.onEnded),this.media.removeEventListener("play",this.onPlay),this.streamable&&this.media.removeEventListener("progress",this.onProgress),this.stopAndScrubTimeout&&clearTimeout(this.stopAndScrubTimeout),this.progressRAF&&window.cancelAnimationFrame(this.progressRAF)}}t.MediaProgressLine=f;let l=1,c=!l;class u{constructor(e,t=!1,s=!1){var i;if(this.video=e,this.onFullScreen=()=>{null!==document.webkitFullscreenElement||this.wrapper.classList.remove("ckin__fullscreen")},this.wrapper=document.createElement("div"),this.wrapper.classList.add("ckin__player"),e.parentNode.insertBefore(this.wrapper,e),this.wrapper.appendChild(e),this.skin=null!==(i=e.dataset.ckin)&&void 0!==i?i:"default",this.stylePlayer(),"default"==this.skin){let t=this.wrapper.querySelector(".default__controls.ckin__controls");this.progress=new f(e,s),t.prepend(this.progress.container)}if(t){e.play().catch(t=>{"NotAllowedError"==t.name&&(e.muted=!0,e.autoplay=!0,e.play())}).finally(()=>{this.wrapper.classList.toggle("is-playing",!this.video.paused)})}}stylePlayer(){const{wrapper:e,video:t,skin:s}=this;e.classList.add(s);const i=this.buildControls();e.insertAdjacentHTML("beforeend",i);let o=0,r=0,f=0;if("default"===s){const s=e.querySelectorAll(".toggle"),i=e.querySelector(".fullscreen");var u=e.querySelector("#time-elapsed");(m=e.querySelector("#time-duration")).innerHTML=String(0|t.duration).toHHMMSS();const r=document.createElement("div");r.classList.add("player-volume"),r.innerHTML='\n <svg class="player-volume__icon" focusable="false" viewBox="0 0 24 24" aria-hidden="true"></svg>\n ';const f=r.firstElementChild;f.addEventListener("click",e=>{n.cancelEvent(e),t.muted=!t.muted});const h=new d;h.setListeners(),h.setHandlers({onScrub:e=>{const s=Math.max(Math.min(e,1),0);t.muted=!1,t.volume=s}}),r.append(h.container);const p=()=>{const e=t.volume;let s;s=!e||t.muted?"M16.5 12c0-1.77-1.02-3.29-2.5-4.03v2.21l2.45 2.45c.03-.2.05-.41.05-.63zm2.5 0c0 .94-.2 1.82-.54 2.64l1.51 1.51C20.63 14.91 21 13.5 21 12c0-4.28-2.99-7.86-7-8.77v2.06c2.89.86 5 3.54 5 6.71zM4.27 3L3 4.27 7.73 9H3v6h4l5 5v-6.73l4.25 4.25c-.67.52-1.42.93-2.25 1.18v2.06c1.38-.31 2.63-.95 3.69-1.81L19.73 21 21 19.73l-9-9L4.27 3zM12 4L9.91 6.09 12 8.18V4z":e>.5?"M3 9v6h4l5 5V4L7 9H3zm13.5 3c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02zM14 3.23v2.06c2.89.86 5 3.54 5 6.71s-2.11 5.85-5 6.71v2.06c4.01-.91 7-4.49 7-8.77s-2.99-7.86-7-8.77z":e>0&&e<.25?"M7 9v6h4l5 5V4l-5 5H7z":"M18.5 12c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02zM5 9v6h4l5 5V4L9 9H5z";try{f.innerHTML=`<path d="${s}"></path>`}catch(e){}h.mousedown||h.setProgress(t.muted?0:e)};t.addEventListener("volumechange",()=>{c=t.muted,l=t.volume,p()}),t.volume=l,t.muted=c,p();if(e.querySelector(".left-controls").insertBefore(r,u.parentElement),Array.from(s).forEach(e=>e.addEventListener("click",()=>{this.togglePlay()})),t.addEventListener("click",()=>{a.touchSupport||this.togglePlay()}),a.touchSupport){let t=0;const s=()=>{t=setTimeout(()=>{t=0,e.classList.remove("show-controls")},3e3)};e.addEventListener("click",()=>{t?clearTimeout(t):e.classList.add("show-controls"),s()}),e.addEventListener("touchstart",()=>{e.classList.add("show-controls"),clearTimeout(t)}),e.addEventListener("touchend",()=>{e.classList.contains("is-playing")&&s()})}t.addEventListener("pause",()=>{clearInterval(o)}),t.addEventListener("dblclick",()=>{if(!a.touchSupport)return this.toggleFullScreen(i)}),i.addEventListener("click",e=>this.toggleFullScreen(i)),"webkitfullscreenchange mozfullscreenchange fullscreenchange MSFullscreenChange".split(" ").forEach(t=>{e.addEventListener(t,this.onFullScreen,!1)})}else if("circle"===s){const s=document.createElement("div");s.classList.add("circle-time-left"),t.parentNode.insertBefore(s,t),s.innerHTML='<div class="circle-time"></div><div class="iconVolume tgico-nosound"></div>';var h=e.querySelector(".progress-ring__circle");const i=h.r.baseVal.value;var p=2*Math.PI*i,m=e.querySelector(".circle-time");const n=e.querySelector(".iconVolume");h.style.strokeDasharray=p+" "+p,h.style.strokeDashoffset=""+p,h.addEventListener("click",()=>{this.togglePlay()}),t.addEventListener("play",()=>{n.style.display="none",o=setInterval(()=>{t.currentTime!=f&&(r=t.currentTime,f=t.currentTime);const e=p-r/t.duration*p;h.style.strokeDashoffset=""+e,t.paused&&clearInterval(o)},20)}),t.addEventListener("pause",()=>{n.style.display=""})}t.addEventListener("play",()=>{this.wrapper.classList.add("is-playing")}),t.addEventListener("pause",()=>{this.wrapper.classList.remove("is-playing")}),t.duration>0?m.innerHTML=String(Math.round(t.duration)).toHHMMSS():t.addEventListener("loadeddata",()=>{m.innerHTML=String(Math.round(t.duration)).toHHMMSS()}),t.addEventListener("timeupdate",()=>{"default"==s&&(u.innerHTML=String(0|t.currentTime).toHHMMSS()),o=this.handleProgress(m,p,h,o)})}togglePlay(e){return e?(this.video.pause(),void this.wrapper.classList.remove("is-playing")):!1===e?(this.video.play(),void this.wrapper.classList.add("is-playing")):void this.video[this.video.paused?"play":"pause"]()}handleProgress(e,t,s,i){const{video:n,skin:a}=this;clearInterval(i);let o=0,r=0;if("circle"===a){i=setInterval(()=>{n.currentTime!=r&&(o=n.currentTime,r=n.currentTime);const e=t-o/n.duration*t;s.style.strokeDashoffset=""+e,n.paused&&clearInterval(i)},20);const a=String(n.duration-n.currentTime|0).toHHMMSS();return"0"!=a&&(e.innerHTML=a),i}}buildControls(){const e=this.skin;return"default"===e?`\n <button class="${e}__button--big toggle tgico" title="Toggle Play"></button>\n <div class="${e}__gradient-bottom ckin__controls"></div>\n <div class="${e}__controls ckin__controls">\n <div class="bottom-controls">\n <div class="left-controls">\n <button class="${e}__button toggle tgico" title="Toggle Video"></button>\n <div class="time">\n <time id="time-elapsed">0:00</time>\n <span> / </span>\n <time id="time-duration">0:00</time>\n </div>\n </div>\n <div class="right-controls">\n <button class="${e}__button fullscreen tgico-fullscreen" title="Full Screen"></button>\n </div>\n </div>\n </div>`:"circle"===e?'\n <svg class="progress-ring" width="200px" height="200px">\n <circle class="progress-ring__circle" stroke="white" stroke-opacity="0.3" stroke-width="3.5" cx="100" cy="100" r="93" fill="transparent" transform="rotate(-90, 100, 100)"/>\n </svg>\n ':void 0}static isFullScreen(){return!!(document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement)}toggleFullScreen(e){const t=this.wrapper;if(r.isAppleMobile){const e=this.video;return e.webkitEnterFullscreen(),void e.enterFullscreen()}u.isFullScreen()?(t.classList.remove("ckin__fullscreen"),document.cancelFullScreen?document.cancelFullScreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitCancelFullScreen?document.webkitCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen(),e.classList.remove("tgico-smallscreen"),e.classList.add("tgico-fullscreen"),e.setAttribute("title","Full Screen")):(t.classList.add("ckin__fullscreen"),t.requestFullscreen?t.requestFullscreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.msRequestFullscreen&&t.msRequestFullscreen(),e.classList.remove("tgico-fullscreen"),e.classList.add("tgico-smallscreen"),e.setAttribute("title","Exit Full Screen"))}}t.default=u},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(22)),a=i(s(7)),o=s(4),r=s(51);t.default=new class{constructor(){this.container=document.getElementById("forward-container"),this.closeBtn=this.container.querySelector(".sidebar-close-button"),this.sendBtn=this.container.querySelector(".btn-circle"),this.msgIDs=[],this.closeBtn.addEventListener("click",this.close.bind(this)),this.sendBtn.addEventListener("click",()=>{let e=this.selector.getSelected();if(this.msgIDs.length&&e.length){this.sendBtn.classList.remove("tgico-send"),this.sendBtn.disabled=!0,o.putPreloader(this.sendBtn),this.selector.freezed=!0;let t=()=>{let s=e.splice(0,3).map(e=>a.default.forwardMessages(e,this.msgIDs));Promise.all(s).then(()=>{if(e.length)return t();this.closeBtn.click()})};t()}})}close(){(this.sidebarWasActive?Promise.resolve():n.default.toggleSidebar(!1)).then(()=>{this.cleanup(),this.container.classList.remove("active")})}cleanup(){this.selector&&(this.selector.container.remove(),this.selector=null)}init(e){this.cleanup(),this.msgIDs=e,this.container.classList.add("active"),this.sendBtn.innerHTML="",this.sendBtn.classList.add("tgico-send"),this.sendBtn.disabled=!1,this.selector=new r.AppSelectPeers(this.container,e=>{e?this.sendBtn.classList.add("is-visible"):this.sendBtn.classList.remove("is-visible")},["dialogs","contacts"],()=>{this.sidebarWasActive=n.default.sidebarEl.classList.contains("active"),n.default.toggleSidebar(!0)})}}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppSelectPeers=void 0;const a=n(s(6)),o=n(s(7)),r=s(0),d=n(s(15)),f=n(s(9)),l=n(s(5)),c=n(s(8)),u=n(s(13));t.AppSelectPeers=class{constructor(e,t,s=["dialogs"],i,n){this.appendTo=e,this.onChange=t,this.peerType=s,this.renderResultsFunc=n,this.container=document.createElement("div"),this.list=document.createElement("ul"),this.chatsContainer=document.createElement("div"),this.selectedContainer=document.createElement("div"),this.input=document.createElement("input"),this.selected=new Set,this.freezed=!1,this.folderID=0,this.offsetIndex=0,this.query="",this.loadedWhat={},this.container.classList.add("selector"),this.renderResultsFunc||(this.renderResultsFunc=this.renderResults);let o=document.createElement("div");o.classList.add("selector-search-container"),this.selectedContainer.classList.add("selector-search"),this.input.placeholder=s.includes("dialogs")?"Select chat":"Add People...",this.input.type="text",this.selectedContainer.append(this.input),o.append(this.selectedContainer),this.selectedScrollable=new a.default(o);let d=document.createElement("hr");this.chatsContainer.classList.add("chats-container"),this.chatsContainer.append(this.list),this.scrollable=new a.default(this.chatsContainer),this.scrollable.setVirtualContainer(this.list),this.chatsContainer.addEventListener("click",e=>{const t=r.findUpAttribute(e.target,"data-peerID");if(r.cancelEvent(e),!t)return;if(this.freezed)return;let s=t.getAttribute("data-peerID");s=+s||s,t.classList.toggle("active"),this.selected.has(s)?this.remove(s):this.add(s);const i=t.querySelector("input");i.checked=!i.checked}),this.selectedContainer.addEventListener("click",e=>{if(this.freezed)return;let t=e.target;if(t=r.findUpClassName(t,"selector-user"),!t)return;const s=t.dataset.key,i=this.chatsContainer.querySelector('[data-peerid="'+s+'"]');i?i.click():this.remove(+s||s)}),this.input.addEventListener("input",()=>{const e=this.input.value;this.query!=e&&(this.peerType.includes("contacts")&&(delete this.loadedWhat.contacts,this.cachedContacts=null),delete this.loadedWhat.dialogs,delete this.loadedWhat.archived,this.folderID=0,this.offsetIndex=0,this.promise=null,this.list.innerHTML="",this.query=e,this.getMoreResults())}),this.scrollable.onScrolledBottom=()=>{this.getMoreResults()},this.container.append(o,d,this.chatsContainer),e.append(this.container),setTimeout(()=>{let e=this.getMoreResults();i&&e.then(()=>{i()})},0)}getMoreDialogs(){return i(this,void 0,void 0,(function*(){if(this.promise)return this.promise;if(this.loadedWhat.dialogs&&this.loadedWhat.archived)return;const e=u.default.windowH/72*1.25|0;this.promise=o.default.getConversations(this.query,this.offsetIndex,e,this.folderID);const t=yield this.promise;this.promise=null;let s=t.dialogs;if(s.length){const e=s[s.length-1].index||0;s=s.slice(),s.findAndSplice(e=>e.peerID==r.$rootScope.myID),this.offsetIndex||0!=this.folderID||this.query&&!"saved messages".includes(this.query.toLowerCase())||!this.peerType.includes("dialogs")||s.unshift({peerID:r.$rootScope.myID,pFlags:{}}),this.offsetIndex=e,this.renderResultsFunc(s.map(e=>e.peerID))}else{if(!this.loadedWhat.dialogs)return this.loadedWhat.dialogs=!0,this.offsetIndex=0,this.folderID=1,this.getMoreDialogs();if(this.loadedWhat.archived=!0,!this.loadedWhat.contacts&&this.peerType.includes("contacts"))return this.getMoreContacts()}}))}getMoreContacts(){return i(this,void 0,void 0,(function*(){if(this.promise)return this.promise;if(!this.loadedWhat.contacts){if(this.cachedContacts||(this.promise=l.default.getContacts(this.query),this.cachedContacts=(yield this.promise).slice(),this.cachedContacts.findAndSplice(e=>e==r.$rootScope.myID),this.promise=null),this.cachedContacts.length){const e=u.default.windowH/72*1.25|0,t=this.cachedContacts.splice(0,e);this.renderResultsFunc(t)}return this.cachedContacts.length||(this.loadedWhat.contacts=!0,this.peerType.includes("dialogs"))?void 0:this.getMoreDialogs()}}))}getMoreResults(){const e=[];return e.push(o.default.getConversationsAll()),!this.peerType.includes("dialogs")&&!this.loadedWhat.contacts||this.loadedWhat.archived||(e.push(this.getMoreDialogs()),this.loadedWhat.archived)?(this.peerType.includes("contacts")&&!this.loadedWhat.contacts&&e.push(this.getMoreContacts()),Promise.all(e)):Promise.all(e)}renderResults(e){!this.peerType.includes("dialogs")&&this.loadedWhat.contacts&&(e=e.filter(e=>l.default.isNonContactUser(e))),e.forEach(e=>{const{dom:t}=d.default.addDialog(e,this.scrollable,!1,!1),s=this.selected.has(e);t.containerEl.insertAdjacentHTML("afterbegin",`<div class="checkbox"><label><input type="checkbox" ${s?"checked":""}><span></span></label></div>`),s&&t.listEl.classList.add("active");let i="";e<0?i=f.default.getChatMembersString(-e):e==r.$rootScope.myID?i="chat with yourself":(i=l.default.getUserStatusString(e),"online"==i&&(i=`<i>${i}</i>`)),t.lastMessageSpan.innerHTML=i})}add(e,t){const s=document.createElement("div");s.classList.add("selector-user","scale-in");const i=document.createElement("avatar-element");return i.classList.add("selector-user-avatar","tgico"),i.setAttribute("dialog","1"),s.dataset.key=""+e,this.selected.add(e),"number"==typeof e&&(void 0===t&&(t=e==r.$rootScope.myID?"Saved":c.default.getPeerTitle(e,!1,!0)),i.setAttribute("peer",""+e)),t&&(s.innerHTML=t),s.insertAdjacentElement("afterbegin",i),this.selectedContainer.insertBefore(s,this.input),this.selectedScrollable.scrollTo(this.selectedScrollable.scrollHeight,!0,!0),this.onChange&&this.onChange(this.selected.size),s}remove(e){const t=this.selectedContainer.querySelector(`[data-key="${e}"]`);t.classList.remove("scale-in"),t.offsetWidth,t.classList.add("scale-out"),t.addEventListener("animationend",()=>{this.selected.delete(e),t.remove(),this.onChange&&this.onChange(this.selected.size)},{once:!0})}getSelected(){return[...this.selected]}}},,function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WebpWorkerController=void 0;const n=i(s(72)),a=s(24),o=i(s(2));class r{constructor(){this.convertPromises={}}init(){this.worker=new n.default,this.worker.addEventListener("message",e=>{const t=e.data.payload;if(0===t.fileName.indexOf("main-")){const e=this.convertPromises[t.fileName];e&&(t.bytes?e.resolve(t.bytes):e.reject(),delete this.convertPromises[t.fileName])}else o.default.postMessage(e.data)})}postMessage(e){this.init&&(this.init(),this.init=null),this.worker.postMessage(e)}convert(e,t){if(e="main-"+e,this.convertPromises.hasOwnProperty(e))return this.convertPromises[e];const s=a.deferredPromise();return this.postMessage({type:"convertWebp",payload:{fileName:e,bytes:t}}),this.convertPromises[e]=s}}t.WebpWorkerController=r;const d=new r;t.default=d},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.OpusDecodeController=void 0;const n=s(1),a=s(10);class o{constructor(){this.sampleRate=48e3,this.tasks=[],this.keepAlive=!1,this.log=a.logger("OPUS",a.LogLevels.error)}isPlaySupported(){if(void 0!==this.isPlaySupportedResult)return this.isPlaySupportedResult;const e=document.createElement("audio");return this.isPlaySupportedResult=!(!e.canPlayType||!e.canPlayType("audio/ogg;").replace(/no/,""))}loadWavWorker(){this.wavWorker||(this.wavWorker=new Worker("waveWorker.min.js"),this.wavWorker.addEventListener("message",e=>{const t=e.data;if(this.log("[WAV] got message:",t),t&&t.page){const e=t.page;this.onTaskEnd(this.tasks.shift(),e)}}))}loadWorker(){this.worker||(this.worker=new Worker("decoderWorker.min.js"),this.worker.addEventListener("message",e=>{const t=e.data;this.log("[DECODER] got message",t),"done"==t.type?(this.wavWorker.postMessage({command:"done"}),t.waveform&&(this.tasks[0].waveform=t.waveform)):this.wavWorker.postMessage({command:"encode",buffers:e.data},n.isSafari?void 0:t.map(e=>e.buffer))}))}setKeepAlive(e){this.keepAlive=e,this.keepAlive?(this.loadWorker(),this.loadWavWorker()):this.tasks.length||this.terminateWorkers()}onTaskEnd(e,t){t?(clearTimeout(e.timeout),e.callback.resolve({bytes:t,waveform:e.waveform})):e.callback.reject("timeout"),this.tasks.length&&this.executeNewTask(this.tasks[0]),this.terminateWorkers()}terminateWorkers(e=!1){(!this.keepAlive&&!this.tasks.length||e)&&(this.worker&&(this.worker.terminate(),this.worker=null),this.wavWorker&&(this.wavWorker.terminate(),this.wavWorker=null))}executeNewTask(e){this.worker.postMessage({command:"init",decoderSampleRate:this.sampleRate,outputBufferSampleRate:this.sampleRate}),this.wavWorker.postMessage({command:"init",wavBitDepth:16,wavSampleRate:this.sampleRate}),this.log("[DECODER] send decode"),this.worker.postMessage({command:"decode",pages:e.pages,waveform:e.withWaveform},n.isSafari?void 0:[e.pages.buffer]),e.timeout=setTimeout(()=>{this.log.error("decode timeout"),this.terminateWorkers(!0),this.tasks.length&&(this.loadWorker(),this.loadWavWorker()),this.onTaskEnd(this.tasks.shift())},1e4)}pushDecodeTask(e,t){return new Promise((s,i)=>{const n={pages:e,withWaveform:t,callback:{resolve:s,reject:i},timeout:0};this.loadWorker(),this.loadWavWorker(),1==this.tasks.push(n)&&this.executeNewTask(n)})}decode(e,t=!1){return i(this,void 0,void 0,(function*(){return this.pushDecodeTask(e,t).then(e=>{const t=new Blob([e.bytes],{type:"audio/wav"});return{url:URL.createObjectURL(t),waveform:e.waveform}})}))}}t.OpusDecodeController=o;const r=new o;t.default=r},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(0),a=i(s(13)),o=i(s(11)),r=s(3);t.default=new class{constructor(){this.webpages={},this.pendingWebPages={},n.$rootScope.$on("apiUpdate",e=>{let t=e.detail;switch(t._){case"updateWebPage":this.saveWebPage(t.webpage)}})}saveWebPage(e,t,s){e.photo&&"photo"===e.photo._?e.photo=a.default.savePhoto(e.photo,s):delete e.photo,e.document&&"document"===e.document._?e.document=o.default.saveDoc(e.document,s):("document"==e.type&&delete e.type,delete e.document);var i=e.site_name,d=e.title||e.author||i||"";i&&d==i&&delete e.site_name,d.length>100&&(d=d.substr(0,80)+"..."),e.rTitle=r.RichTextProcessor.wrapRichText(d,{noLinks:!0,noLinebreaks:!0});var f="";if("GitHub"==i){var l=e.url.match(/(https?:\/\/github\.com\/[^\/]+\/[^\/]+)/);l&&(f=l[0]+"/issues/{1}")}var c=e.description||"";if(c.length>180&&(c=c.substr(0,150).replace(/(\n|\s)+$/,"")+"..."),e.rDescription=r.RichTextProcessor.wrapRichText(c,{contextSite:i||"external",contextHashtag:f}),"photo"!=e.type&&"video"!=e.type&&"gif"!=e.type&&"document"!=e.type&&!e.description&&e.photo&&(e.type="photo"),t&&(void 0===this.pendingWebPages[e.id]&&(this.pendingWebPages[e.id]={}),this.pendingWebPages[e.id][t]=!0,this.webpages[e.id]=e),void 0===this.webpages[e.id]?this.webpages[e.id]=e:n.safeReplaceObject(this.webpages[e.id],e),!t&&void 0!==this.pendingWebPages[e.id]){var u=[];for(let t in this.pendingWebPages[e.id])u.push(t);n.$rootScope.$broadcast("webpage_updated",{id:e.id,msgs:u})}}getWebPage(e){return this.webpages[e]}}},function(e,t,s){"use strict";var i=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppMediaViewer=void 0;const a=n(s(8)),o=n(s(13)),r=n(s(7)),d=s(3),f=s(10),l=n(s(35)),c=s(0),u=n(s(11)),h=n(s(49)),p=s(4),m=n(s(23)),g=n(s(50)),b=s(1),v=s(24),y=n(s(37));class w{constructor(e,t){this.onSwipe=t,this.handleTouchStart=e=>{if("INPUT"==e.target.tagName)return void(this.xDown=this.yDown=null);const t=e.touches[0];this.xDown=t.clientX,this.yDown=t.clientY},this.handleTouchMove=e=>{if(null==this.xDown||null==this.yDown)return;const t=e.touches[0].clientX,s=e.touches[0].clientY,i=this.xDown-t,n=this.yDown-s;this.onSwipe(i,n)&&(this.xDown=null,this.yDown=null)},e.addEventListener("touchstart",this.handleTouchStart,!1),e.addEventListener("touchmove",this.handleTouchMove,!1)}}class _{constructor(){this.wholeDiv=document.querySelector(".media-viewer-whole"),this.overlaysDiv=this.wholeDiv.firstElementChild,this.author={avatarEl:this.overlaysDiv.querySelector(".media-viewer-userpic"),nameEl:this.overlaysDiv.querySelector(".media-viewer-name"),date:this.overlaysDiv.querySelector(".media-viewer-date")},this.buttons={},this.content={container:this.overlaysDiv.querySelector(".media-viewer-media"),caption:this.overlaysDiv.querySelector(".media-viewer-caption"),mover:null},this.currentMessageID=0,this.preloader=null,this.preloaderStreamable=null,this.lastTarget=null,this.prevTargets=[],this.nextTargets=[],this.peerID=0,this.loadMediaPromiseUp=null,this.loadMediaPromiseDown=null,this.loadedAllMediaUp=!1,this.loadedAllMediaDown=!1,this.reverse=!1,this.needLoadMore=!0,this.pageEl=document.getElementById("page-chats"),this.onClickDownload=e=>{const t=r.default.getMessage(this.currentMessageID);if(t.media.photo)o.default.savePhotoFile(t.media.photo);else{let e=null;e=t.media.webpage?t.media.webpage.document:t.media.document,e&&u.default.saveDocFile(e)}},this.onClick=e=>{if(this.setMoverAnimationPromise)return;const t=e.target;if("A"==t.tagName)return;if(c.cancelEvent(e),b.touchSupport)return this.highlightSwitchersTimeout?clearTimeout(this.highlightSwitchersTimeout):this.wholeDiv.classList.add("highlight-switchers"),void(this.highlightSwitchersTimeout=setTimeout(()=>{this.wholeDiv.classList.remove("highlight-switchers"),this.highlightSwitchersTimeout=0},3e3));let s=null;["media-viewer-mover","media-viewer-buttons","media-viewer-author"].find(e=>{try{if(s=c.findUpClassName(t,e),s)return!0}catch(e){return!1}}),s&&"IMG"!=t.tagName&&"image"!=t.tagName||this.buttons.close.click()},this.onKeyDown=e=>{"ArrowRight"==e.key?this.buttons.next.click():"ArrowLeft"==e.key&&this.buttons.prev.click()},this.log=f.logger("AMV"),this.preloader=new l.default,this.preloaderStreamable=new l.default(void 0,!1,!0),this.lazyLoadQueue=new m.default(void 0,!0),p.parseMenuButtonsTo(this.buttons,this.wholeDiv.querySelectorAll("[class*='menu']"));const e=e=>{c.cancelEvent(e),this.content.container.innerHTML="",this.peerID=0,this.currentMessageID=0,this.lazyLoadQueue.clear(),this.setMoverToTarget(this.lastTarget,!0),this.lastTarget=null,this.prevTargets=[],this.nextTargets=[],this.loadedAllMediaUp=this.loadedAllMediaDown=!1,this.loadMediaPromiseUp=this.loadMediaPromiseDown=null,this.setMoverPromise=null,g.default.container.classList.contains("active")&&setTimeout(()=>{g.default.close()},200),window.removeEventListener("keydown",this.onKeyDown)};[this.buttons.close,this.buttons["mobile-close"],this.preloaderStreamable.preloader].forEach(t=>{t.addEventListener("click",e)}),this.buttons.prev.addEventListener("click",e=>{if(c.cancelEvent(e),this.setMoverPromise)return;let t=this.prevTargets.pop();t?(this.nextTargets.unshift({element:this.lastTarget,mid:this.currentMessageID}),this.openMedia(r.default.getMessage(t.mid),t.element)):this.buttons.prev.style.display="none"}),this.buttons.next.addEventListener("click",e=>{if(c.cancelEvent(e),this.setMoverPromise)return;let t=this.nextTargets.shift();t?(this.prevTargets.push({element:this.lastTarget,mid:this.currentMessageID}),this.openMedia(r.default.getMessage(t.mid),t.element)):this.buttons.next.style.display="none"}),[this.buttons.download,this.buttons["menu-download"]].forEach(e=>{e.addEventListener("click",this.onClickDownload)});const t=e=>{g.default.init([this.currentMessageID])};if([this.buttons.forward,this.buttons["menu-forward"]].forEach(e=>{e.addEventListener("click",t)}),this.wholeDiv.addEventListener("click",this.onClick),this.setNewMover(),b.touchSupport){new w(this.wholeDiv,(e,t)=>{if(h.default.isFullScreen())return;if(Math.abs(e)/o.default.windowW>.2||e>125)return e<0?this.buttons.prev.click():this.buttons.next.click(),!0;return(Math.abs(t)/o.default.windowH>.2||t>125)&&(this.buttons.close.click(),!0)})}}setMoverToTarget(e,t=!1,s=0){return i(this,void 0,void 0,(function*(){const i=this.content.mover;e||(e=this.content.container),t||(i.innerHTML=""),this.removeCenterFromMover(i);const n=0!==s,a=n?350:200;let r,d;this.log("setMoverToTarget",e,t,n,s),e&&(e instanceof SVGImageElement||e.parentElement instanceof SVGForeignObjectElement?(r=c.findUpClassName(e,"attachment"),d=r.getBoundingClientRect()):(r=e.parentElement,d=e.getBoundingClientRect()));const f=this.content.container.getBoundingClientRect();let l,u,h,p="";if(n?(l=1===s?o.default.windowW:-f.width,u=f.top):(l=d.left,u=d.top),p+=`translate(${l}px,${u}px) `,e instanceof HTMLImageElement||e instanceof HTMLVideoElement||"DIV"==e.tagName){if(i.firstElementChild&&i.firstElementChild.classList.contains("media-viewer-aspecter")){h=i.firstElementChild;const e=h.querySelector(".ckin__player");if(e){const t=e.firstElementChild;h.append(t),e.remove()}h.style.cssText||(i.classList.remove("active"),this.setFullAspect(h,f,d),i.offsetLeft,i.classList.add("active"))}else h=document.createElement("div"),h.classList.add("media-viewer-aspecter"),i.prepend(h);h.style.cssText=`width: ${d.width}px; height: ${d.height}px; transform: scale(${f.width/d.width}, ${f.height/d.height});`}i.style.width=f.width+"px",i.style.height=f.height+"px";const m=d.width/f.width,g=d.height/f.height;n||(p+=`scale(${m},${g}) `);let b=window.getComputedStyle(r).getPropertyValue("border-radius");const y=c.fillPropertyValue(b);let w;b=y.map(e=>parseInt(e)/m+"px").join(" "),n||(i.style.borderRadius=b),i.style.transform=p;const _=e.classList.contains("is-out"),S=this.setMoverAnimationPromise=v.deferredPromise(),L={onAnimationEnd:S};if(this.setMoverAnimationPromise.then(()=>{this.setMoverAnimationPromise=null}),t)return e instanceof SVGSVGElement&&(w=i.querySelector("path"),w&&this.sizeTailPath(w,f,m,a,!1,_,b)),e.classList.contains("media-viewer-media")&&i.classList.add("hiding"),setTimeout(()=>{this.wholeDiv.classList.remove("active")},0),setTimeout(()=>{i.style.borderRadius=b,i.firstElementChild&&(i.firstElementChild.style.borderRadius=b)},a/2),setTimeout(()=>{i.innerHTML="",i.classList.remove("moving","active","hiding"),i.style.cssText="display: none;",S.resolve()},a),L;{let t,s;if("DIV"==e.tagName)e.firstElementChild&&(t=new Image,s=e.firstElementChild.src,i.append(t));else if(e instanceof HTMLImageElement)t=new Image,s=e.src;else if(e instanceof HTMLVideoElement){(t=document.createElement("video")).src=null==e?void 0:e.src}else if(e instanceof SVGSVGElement){const t=e.dataset.clipID,s=t+"-mv",{width:n,height:a}=f,o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.setAttributeNS(null,"width",""+n),o.setAttributeNS(null,"height",""+a),o.setAttributeNS(null,"viewBox",`0 0 ${n} ${a}`),o.setAttributeNS(null,"preserveAspectRatio","xMidYMid meet"),o.insertAdjacentHTML("beforeend",e.firstElementChild.outerHTML.replace(t,s)),o.insertAdjacentHTML("beforeend",e.lastElementChild.outerHTML.replace(t,s));const r=o.firstElementChild,d=r.firstElementChild.firstElementChild;if(d instanceof SVGUseElement){let e,t=d.getAttributeNS(null,"transform");t=t.replace(/translate\((.+?), (.+?)\) scale\((.+?), (.+?)\)/,(e,t,s,i,o)=>`translate(${t=2!=(t=+t)?n-2/m:2/m}, ${a}) scale(${+i/m}, ${+o/g})`),d.setAttributeNS(null,"transform",t),w=r.firstElementChild.lastElementChild;const s=b.split(" ").map(e=>parseInt(e));e=_?c.generatePathData(0,0,n-9/m,a,...s):c.generatePathData(9/m,0,n-9/m,a,...s),w.setAttributeNS(null,"d",e)}const l=o.lastElementChild;l.setAttributeNS(null,"width",""+f.width),l.setAttributeNS(null,"height",""+f.height),i.prepend(o)}h&&(h.style.borderRadius=b,t&&h.append(t)),t=i.querySelector("video, img"),t instanceof HTMLImageElement&&(t.classList.add("thumbnail"),h||(t.style.width=f.width+"px",t.style.height=f.height+"px"),s&&(yield new Promise((e,i)=>{t.addEventListener("load",e),s&&(t.src=s)}))),i.style.display="",window.requestAnimationFrame(()=>{i.classList.add(n?"moving":"active")})}return yield new Promise(e=>window.requestAnimationFrame(e)),i.style.transform=`translate(${f.left}px,${f.top}px) scale(1,1)`,h&&this.setFullAspect(h,f,d),setTimeout(()=>{i.style.borderRadius="",i.firstElementChild&&(i.firstElementChild.style.borderRadius="")},a/2),i.dataset.timeout=""+setTimeout(()=>{i.classList.remove("moving"),h&&(i.querySelector("video"),i.classList.remove("active"),h.style.cssText="",i.offsetLeft),i.classList.add("center","no-transition"),i.classList.add("active"),delete i.dataset.timeout,S.resolve()},a),w&&this.sizeTailPath(w,f,m,a,!0,_,b),L}))}setFullAspect(e,t,s){const i=t.width/t.height;let{width:n,height:a}=s;i>0?n=a*i:a=n*i,e.style.cssText=`width: ${n}px; height: ${a}px; transform: scale(${t.width/n}, ${t.height/a});`}sizeTailPath(e,t,s,i,n,a,o){const r=Date.now(),{width:d,height:f}=t;i/=2;const l=o.split(" ").map(e=>parseInt(e)),u=()=>{const t=Date.now()-r;let o=t/i;o>1&&(o=1),n&&(o=1-o);const h=l.map(e=>e*o);let p;p=a?c.generatePathData(0,0,d-9/s*o,f,...h):c.generatePathData(9/s*o,0,d,f,...h),e.setAttributeNS(null,"d",p),t<i&&window.requestAnimationFrame(u)};u()}removeCenterFromMover(e){if(e.classList.contains("center")){const t=this.content.container.getBoundingClientRect();e.style.transform=`translate(${t.left}px,${t.top}px)`,e.classList.remove("center"),e.offsetLeft,e.classList.remove("no-transition")}}moveTheMover(e,t=!0){const s=o.default.windowW;this.removeCenterFromMover(e),e.classList.add("moving"),e.dataset.timeout&&clearTimeout(+e.dataset.timeout);const i=e.getBoundingClientRect(),n=e.style.transform.replace(/translate\((.+?),/,(e,n)=>{const a=t?-i.width:s;return e.replace(n,a+"px")});e.style.transform=n,setTimeout(()=>{e.remove()},350)}setNewMover(){const e=document.createElement("div");if(e.classList.add("media-viewer-mover"),this.content.mover){this.content.mover.parentElement.append(e)}else this.wholeDiv.append(e);return this.content.mover=e}loadMoreMedia(e=!0){if(e&&this.loadedAllMediaDown)return;if(!e&&this.loadedAllMediaUp)return;if(e&&this.loadMediaPromiseDown)return this.loadMediaPromiseDown;if(!e&&this.loadMediaPromiseUp)return this.loadMediaPromiseUp;const t=e?0:50;let s,i=this.currentMessageID;s=e?this.reverse?this.prevTargets[0]:this.nextTargets[this.nextTargets.length-1]:this.reverse?this.nextTargets[this.nextTargets.length-1]:this.prevTargets[0],s&&(i=s.mid),e||(i+=1);const n=this.peerID,a=r.default.getSearch(n,"",{_:"inputMessagesFilterPhotoVideo"},i,50,0,t).then(t=>{if(this.peerID!=n)return void this.log.warn("peer changed");this.log("loaded more media by maxID:",i,t,e,this.reverse),t.history.length<50&&(e?this.loadedAllMediaDown=!0:this.loadedAllMediaUp=!0);(e?t.history.forEach:t.history.forEachReverse).call(t.history,t=>{const s=r.default.getMessage(t).media;if(!s||!(s.photo||s.document||s.webpage&&s.webpage.document))return;if("document"==s._&&"video"!=s.type)return;const i={element:null,mid:t};e?this.reverse?this.prevTargets.unshift(i):this.nextTargets.push(i):this.reverse?this.nextTargets.push(i):this.prevTargets.unshift(i)}),this.buttons.prev.style.display=this.prevTargets.length?"":"none",this.buttons.next.style.display=this.nextTargets.length?"":"none"},()=>{}).then(()=>{e?this.loadMediaPromiseDown=null:this.loadMediaPromiseUp=null});return e?this.loadMediaPromiseDown=a:this.loadMediaPromiseUp=a,a}updateMediaSource(e,t,s){const i=e.querySelector(s);p.renderImageFromUrl(i,t)}openMedia(e,t,s=!1,n,r=[],f=[],l=!0){return i(this,void 0,void 0,(function*(){if(this.setMoverPromise)return this.setMoverPromise;this.log("openMedia doc:",e);const n=e.media.photo||e.media.document||e.media.webpage.document||e.media.webpage.photo,m="video"==n.type||"gif"==n.type,v=!this.peerID;v&&(this.peerID=c.$rootScope.selectedPeerID,this.prevTargets=r,this.nextTargets=f,this.reverse=s,this.needLoadMore=l,g.default.container.classList.contains("active")&&(g.default.close(),yield new Promise(e=>setTimeout(e,200))));let w=0;v||(w=this.reverse?this.currentMessageID<e.mid?1:-1:this.currentMessageID>e.mid?1:-1),this.buttons.prev.style.display=this.prevTargets.length?"":"none",this.buttons.next.style.display=this.nextTargets.length?"":"none";const _=this.content.container;!t&&(t=_),this.currentMessageID=e.mid,this.lastTarget=t,this.needLoadMore&&(this.nextTargets.length<20&&this.loadMoreMedia(!this.reverse),this.prevTargets.length<20&&this.loadMoreMedia(this.reverse)),_.firstElementChild&&(_.innerHTML="");const S=new Date(1e3*n.date),L=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][S.getMonth()]+" "+S.getDate()+" at "+S.getHours()+":"+("0"+S.getMinutes()).slice(-2);this.author.date.innerText=L;const M=a.default.getPeerTitle(e.fromID);this.author.nameEl.innerHTML=M,e.message?this.content.caption.innerHTML=d.RichTextProcessor.wrapRichText(e.message,{entities:e.totalEntities}):this.content.caption.innerHTML="";let D=this.author.avatarEl;this.author.avatarEl=this.author.avatarEl.cloneNode(),this.author.avatarEl.setAttribute("peer",""+e.fromID),D.parentElement.replaceChild(this.author.avatarEl,D);0!==w?(this.moveTheMover(this.content.mover,1===w),this.setNewMover()):(window.addEventListener("keydown",this.onKeyDown),this.wholeDiv.classList.add("active"));const E=this.content.mover,I=b.mediaSizes.isMobile?this.pageEl.scrollWidth:this.pageEl.scrollWidth-16,C=o.default.windowH-100,P=o.default.setAttachmentSize(n,_,I,C),k=n.supportsStreaming?this.preloaderStreamable:this.preloader;let T;if(m){const s=document.createElement("video");T=this.setMoverToTarget(t,!1,w).then(({onAnimationEnd:a})=>{const o=E.firstElementChild&&E.firstElementChild.classList.contains("media-viewer-aspecter")?E.firstElementChild:E,r=E.querySelector("video");r&&r.remove(),s.setAttribute("playsinline",""),b.isSafari&&(s.autoplay=!0),"gif"==n.type&&(s.muted=!0,s.autoplay=!0,s.loop=!0),s.parentElement||o.append(s);const d=new Promise(e=>{s.addEventListener("canplay",e,{once:!0})});if(n.supportsStreaming){a.then(()=>{s.readyState<s.HAVE_FUTURE_DATA&&k.attach(E,!0)});const e=()=>{s.addEventListener("canplay",()=>{k.detach(),s.parentElement.classList.remove("is-buffering")},{once:!0})};s.addEventListener("waiting",t=>{const i=s.networkState===s.NETWORK_LOADING,n=s.readyState<s.HAVE_FUTURE_DATA;i&&n&&(e(),k.attach(E,!0),s.parentElement.classList.add("is-buffering"))}),e()}this.lazyLoadQueue.unshift({div:null,load:()=>{const r=n.supportsStreaming?Promise.resolve():u.default.downloadDocNew(n);return n.supportsStreaming||a.then(()=>{k.attach(E,!0,r)}),r.then(()=>i(this,void 0,void 0,(function*(){if(this.currentMessageID!=e.mid)return void this.log.warn("media viewer changed video");const i=n.url;t instanceof SVGSVGElement?(o.firstElementChild.lastElementChild.append(s),this.updateMediaSource(E,i,"video")):p.renderImageFromUrl(s,i),"gif"!=n.type&&(s.dataset.ckin="default",s.dataset.overlay="1",y.default.pause(),y.default.willBePlayedMedia=null,Promise.all([d,a]).then(()=>{new h.default(s,!0,n.supportsStreaming)}))}))),r},wasSeen:!0})})}else T=this.setMoverToTarget(t,!1,w).then(({onAnimationEnd:s})=>{this.lazyLoadQueue.unshift({div:null,load:()=>{const i=o.default.preloadPhoto(n.id,P);return s.then(()=>{this.preloader.attach(E,!0,i)}),i.then(()=>{if(this.currentMessageID!=e.mid)return void this.log.warn("media viewer changed photo");const s=n.url;if(t instanceof SVGSVGElement){if(this.updateMediaSource(t,s,"img"),this.updateMediaSource(E,s,"img"),b.mediaSizes.isMobile){const e=E.querySelectorAll("img");e&&e.length&&e.forEach(e=>{e.classList.remove("thumbnail")})}}else{const e=E.firstElementChild&&E.firstElementChild.classList.contains("media-viewer-aspecter")?E.firstElementChild:E;let t=e.firstElementChild;t&&"IMG"==t.tagName||(t=new Image),p.renderImageFromUrl(t,s,()=>{b.mediaSizes.isMobile&&t.classList.remove("thumbnail"),e.append(t)})}this.preloader.detach()}).catch(e=>{this.log.error(e)}),i},wasSeen:!0})});return this.setMoverPromise=T.catch(()=>{this.setMoverAnimationPromise=null}).finally(()=>{this.setMoverPromise=null})}))}}t.AppMediaViewer=_,t.default=new _},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Layouter=t.RectPart=void 0,t.RectPart={None:0,Top:1,Right:2,Bottom:4,Left:8};let i=(e,t)=>e.reduce((e,t)=>e+t,t);function n(e,t,s){return e<t?t:e>s?s:e}class a{constructor(e,t,s,n,o=t){this.sizes=e,this.maxWidth=t,this.minWidth=s,this.spacing=n,this.maxHeight=o,this.count=e.length,this.ratios=a.countRatios(e),this.proportions=a.countProportions(this.ratios),this.averageRatio=i(this.ratios,1)/this.count,this.maxSizeRatio=t/this.maxHeight}layout(){return this.count?this.count>=5||this.ratios.find(e=>e>2)?new o(this.ratios,this.averageRatio,this.maxWidth,this.minWidth,this.spacing).layout():2==this.count?this.layoutTwo():3==this.count?this.layoutThree():this.layoutFour():[]}layoutTwo(){return"ww"==this.proportions&&this.averageRatio>1.4*this.maxSizeRatio&&this.ratios[1]-this.ratios[0]<.2?this.layoutTwoTopBottom():"ww"==this.proportions||"qq"==this.proportions?this.layoutTwoLeftRightEqual():this.layoutTwoLeftRight()}layoutThree(){return"n"==this.proportions[0]?this.layoutThreeLeftAndOther():this.layoutThreeTopAndOther()}layoutFour(){return"w"==this.proportions[0]?this.layoutFourTopAndOther():this.layoutFourLeftAndOther()}layoutTwoTopBottom(){const e=this.maxWidth,s=Math.round(Math.min(e/this.ratios[0],Math.min(e/this.ratios[1],(this.maxHeight-this.spacing)/2)));return[{geometry:{x:0,y:0,width:e,height:s},sides:t.RectPart.Left|t.RectPart.Top|t.RectPart.Right},{geometry:{x:0,y:s+this.spacing,width:e,height:s},sides:t.RectPart.Left|t.RectPart.Bottom|t.RectPart.Right}]}layoutTwoLeftRightEqual(){const e=(this.maxWidth-this.spacing)/2,s=Math.round(Math.min(e/this.ratios[0],Math.min(e/this.ratios[1],1*this.maxHeight)));return[{geometry:{x:0,y:0,width:e,height:s},sides:t.RectPart.Top|t.RectPart.Left|t.RectPart.Bottom},{geometry:{x:e+this.spacing,y:0,width:e,height:s},sides:t.RectPart.Top|t.RectPart.Right|t.RectPart.Bottom}]}layoutTwoLeftRight(){const e=Math.round(1.5*this.minWidth),s=Math.min(Math.round(Math.max(.4*(this.maxWidth-this.spacing),(this.maxWidth-this.spacing)/this.ratios[0]/(1/this.ratios[0]+1/this.ratios[1]))),this.maxWidth-this.spacing-e),i=this.maxWidth-s-this.spacing,n=Math.min(this.maxHeight,Math.round(Math.min(i/this.ratios[0],s/this.ratios[1])));return[{geometry:{x:0,y:0,width:i,height:n},sides:t.RectPart.Top|t.RectPart.Left|t.RectPart.Bottom},{geometry:{x:i+this.spacing,y:0,width:s,height:n},sides:t.RectPart.Top|t.RectPart.Right|t.RectPart.Bottom}]}layoutThreeLeftAndOther(){const e=this.maxHeight,s=Math.round(Math.min((this.maxHeight-this.spacing)/2,this.ratios[1]*(this.maxWidth-this.spacing)/(this.ratios[2]+this.ratios[1]))),i=e-s-this.spacing,n=Math.max(this.minWidth,Math.round(Math.min((this.maxWidth-this.spacing)/2,Math.min(s*this.ratios[2],i*this.ratios[1])))),a=Math.min(Math.round(e*this.ratios[0]),this.maxWidth-this.spacing-n);return[{geometry:{x:0,y:0,width:a,height:e},sides:t.RectPart.Top|t.RectPart.Left|t.RectPart.Bottom},{geometry:{x:a+this.spacing,y:0,width:n,height:i},sides:t.RectPart.Top|t.RectPart.Right},{geometry:{x:a+this.spacing,y:i+this.spacing,width:n,height:s},sides:t.RectPart.Bottom|t.RectPart.Right}]}layoutThreeTopAndOther(){const e=this.maxWidth,s=Math.round(Math.min(e/this.ratios[0],.66*(this.maxHeight-this.spacing))),i=(this.maxWidth-this.spacing)/2,n=Math.min(this.maxHeight-s-this.spacing,Math.round(Math.min(i/this.ratios[1],i/this.ratios[2]))),a=e-i-this.spacing;return[{geometry:{x:0,y:0,width:e,height:s},sides:t.RectPart.Left|t.RectPart.Top|t.RectPart.Right},{geometry:{x:0,y:s+this.spacing,width:i,height:n},sides:t.RectPart.Bottom|t.RectPart.Left},{geometry:{x:i+this.spacing,y:s+this.spacing,width:a,height:n},sides:t.RectPart.Bottom|t.RectPart.Right}]}layoutFourTopAndOther(){const e=this.maxWidth,s=Math.round(Math.min(e/this.ratios[0],.66*(this.maxHeight-this.spacing))),i=Math.round((this.maxWidth-2*this.spacing)/(this.ratios[1]+this.ratios[2]+this.ratios[3])),n=Math.max(this.minWidth,Math.round(Math.min(.4*(this.maxWidth-2*this.spacing),i*this.ratios[1]))),a=Math.round(Math.max(Math.max(1*this.minWidth,.33*(this.maxWidth-2*this.spacing)),i*this.ratios[3])),o=e-n-a-2*this.spacing,r=Math.min(this.maxHeight-s-this.spacing,i);return[{geometry:{x:0,y:0,width:e,height:s},sides:t.RectPart.Left|t.RectPart.Top|t.RectPart.Right},{geometry:{x:0,y:s+this.spacing,width:n,height:r},sides:t.RectPart.Bottom|t.RectPart.Left},{geometry:{x:n+this.spacing,y:s+this.spacing,width:o,height:r},sides:t.RectPart.Bottom},{geometry:{x:n+this.spacing+o+this.spacing,y:s+this.spacing,width:a,height:r},sides:t.RectPart.Right|t.RectPart.Bottom}]}layoutFourLeftAndOther(){const e=this.maxHeight,s=Math.round(Math.min(e*this.ratios[0],.6*(this.maxWidth-this.spacing))),i=Math.round((this.maxHeight-2*this.spacing)/(1/this.ratios[1]+1/this.ratios[2]+1/this.ratios[3])),n=Math.round(i/this.ratios[1]),a=Math.round(i/this.ratios[2]),o=e-n-a-2*this.spacing,r=Math.max(this.minWidth,Math.min(this.maxWidth-s-this.spacing,i));return[{geometry:{x:0,y:0,width:s,height:e},sides:t.RectPart.Top|t.RectPart.Left|t.RectPart.Bottom},{geometry:{x:s+this.spacing,y:0,width:r,height:n},sides:t.RectPart.Top|t.RectPart.Right},{geometry:{x:s+this.spacing,y:n+this.spacing,width:r,height:a},sides:t.RectPart.Right},{geometry:{x:s+this.spacing,y:n+a+2*this.spacing,width:r,height:o},sides:t.RectPart.Bottom|t.RectPart.Right}]}static countRatios(e){return e.map(e=>e.w/e.h)}static countProportions(e){return e.map(e=>e>1.2?"w":e<.8?"n":"q").join("")}}t.Layouter=a;class o{constructor(e,t,s,i,n,a=4*s/3){this.averageRatio=t,this.maxWidth=s,this.minWidth=i,this.spacing=n,this.maxHeight=a,this.ratios=o.cropRatios(e,t),this.count=e.length}static cropRatios(e,t){return e.map(e=>t>1.1?n(e,1,2.75):n(e,.6667,1))}layout(){let e=new Array(this.count),s=[];const n=(e,t)=>{const s=this.ratios.slice(e,e+t),n=i(s,0);return(this.maxWidth-(t-1)*this.spacing)/n},a=e=>{let t=[],i=0;for(let s of e)t.push(n(i,s)),i+=s;s.push({lineCounts:e,heights:t})};for(let e=1;e!=this.count;++e){const t=this.count-e;e>3||t>3||a([e,t])}for(let e=1;e!=this.count-1;++e)for(let t=1;t!=this.count-e;++t){const s=this.count-e-t;e>3||t>(this.averageRatio<.85?4:3)||s>3||a([e,t,s])}for(let e=1;e!=this.count-1;++e)for(let t=1;t!=this.count-e;++t)for(let s=1;s!=this.count-e-t;++s){const i=this.count-e-t-s;e>3||t>3||s>3||i>3||a([e,t,s,i])}let o=null,r=0;for(const e of s){const{heights:t,lineCounts:s}=e,n=s.length,a=i(t,0)+this.spacing*(n-1),d=Math.min(...t),f=(Math.max(...t),d<this.minWidth?1.5:1),l=(()=>{for(let e=1;e!=n;++e)if(s[e-1]>s[e])return 1.5;return 1})(),c=Math.abs(a-this.maxHeight)*f*l;(!o||c<r)&&(o=e,r=c)}const d=o.lineCounts,f=o.heights,l=d.length;let c=0,u=0;for(let s=0;s!=l;++s){const i=d[s],n=f[s],a=Math.round(n);let o=0;for(let r=0;r!=i;++r){const d=t.RectPart.None|(0==s?t.RectPart.Top:t.RectPart.None)|(s==l-1?t.RectPart.Bottom:t.RectPart.None)|(0==r?t.RectPart.Left:t.RectPart.None)|(r==i-1?t.RectPart.Right:t.RectPart.None),f=this.ratios[c],h=r==i-1?this.maxWidth-o:Math.round(f*n);e[c]={geometry:{x:o,y:u,width:h,height:a},sides:d},o+=h+this.spacing,++c}u+=a+this.spacing}return e}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.roundPercents=void 0;const n=i(s(39)),a=s(3),o=s(0),r=s(1),d=i(s(22)),f=i(s(12)),l=i(s(34)),c=s(19);let u=0;t.roundPercents=e=>{const t=e.reduce((e,t)=>e+Math.round(t),0);if(t>100){const s=t-100,i=e.length;for(let t=0;t<s;++t){let t=-1,s=1;for(let n=0;n<i;++n){let i=e[n]%1;i>=.5&&i<s&&(s=i,t=n)}if(-1==t)return;e[t]-=s}}else if(t<100){const s=100-t,i=e.length;for(let t=0;t<s;++t){let t=-1,s=0;for(let n=0;n<i;++n){let i=e[n]%1;i<.5&&i>s&&(s=i,t=n)}if(-1==t)return;e[t]+=1-s}}};const h=[];o.$rootScope.$on("poll_update",e=>{const{poll:t,results:s}=e.detail;for(const e of h)if(e.id==t.id){const i=e.element;i.isClosed=!!t.pFlags.closed,i.performResults(s,t.chosenIndexes)}}),o.$rootScope.$on("peer_changed",()=>{m&&p(m,g,b)});const p=(e,t,s)=>{e.classList.remove("active"),clearTimeout(s),setTimeout(()=>{t(),e.remove(),m==e&&g==t&&b==s&&(m=g=null,b=0)},200)};let m,g,b;class v extends HTMLElement{constructor(){super(),this.maxOffset=-46.5,this.isClosed=!1,this.isQuiz=!1,this.isRetracted=!1,this.isPublic=!1,this.isMultiple=!1,this.chosenIndexes=[],this.chosingIndexes=[],this.sentVote=!1}connectedCallback(){u||(u=document.getElementById("poll-line").getTotalLength()),this.pollID=this.getAttribute("poll-id"),this.mid=+this.getAttribute("message-id");const{poll:e,results:t}=n.default.getPoll(this.pollID);h.push({id:this.pollID,element:this});let s="";if(e.pFlags)if(this.isPublic=!!e.pFlags.public_voters,this.isQuiz=!!e.pFlags.quiz,this.isClosed=!!e.pFlags.closed,this.isMultiple=!!e.pFlags.multiple_choice,this.isClosed)s="Final results",this.classList.add("is-closed");else{let e=this.isQuiz?"Quiz":"Poll";s=(this.isPublic?"":"Anonymous ")+e}const i=this.isMultiple?'<span class="poll-answer-selected tgico-check"></span>':"",f=e.answers.map((e,t)=>`\n <div class="poll-answer" data-index="${t}">\n <div class="circle-hover">\n <div class="animation-ring"></div>\n <svg class="progress-ring">\n <circle class="progress-ring__circle" cx="13" cy="13" r="9"></circle>\n </svg>\n ${i}\n </div>\n <div class="poll-answer-percents"></div>\n <div class="poll-answer-text">${a.RichTextProcessor.wrapEmojiText(e.text)}</div>\n <svg version="1.1" class="poll-line" style="display: none;" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 ${r.mediaSizes.active.regular.width} 35" xml:space="preserve">\n <use href="#poll-line"></use>\n </svg>\n <span class="poll-answer-selected tgico"></span>\n </div>\n `).join("");if(this.innerHTML=`\n <div class="poll-title">${e.rQuestion}</div>\n <div class="poll-desc">\n <div class="poll-type">${s}</div>\n <div class="poll-avatars"></div>\n </div>\n ${f}\n <div class="poll-footer">\n <div class="poll-footer-button poll-view-results hide">View Results</div>\n <div class="poll-votes-count"></div>\n </div>\n `,this.descDiv=this.firstElementChild.nextElementSibling,this.typeDiv=this.descDiv.firstElementChild,this.avatarsDiv=this.descDiv.lastElementChild,this.isQuiz&&(this.classList.add("is-quiz"),e.close_period&&e.close_date)){const t=document.createElement("div");t.classList.add("poll-time"),this.descDiv.append(t);const s=document.createElementNS("http://www.w3.org/2000/svg","svg");s.classList.add("poll-quiz-timer"),this.quizTimer=s;const i=2,a=7,o=2*Math.PI*a,r=document.createElementNS("http://www.w3.org/2000/svg","circle");r.classList.add("poll-quiz-timer-circle"),r.setAttributeNS(null,"cx","16"),r.setAttributeNS(null,"cy","16"),r.setAttributeNS(null,"r",""+a),r.setAttributeNS(null,"stroke-width",""+i),s.append(r),this.descDiv.append(s);const d=1e3*e.close_period,f=1e3*(e.close_date-l.default.serverTimeOffset);this.quizInterval=setInterval(()=>{const e=Date.now(),s=(f-e)/d,i=(f-e)/1e3+1|0;t.innerHTML=String(i).toHHMMSS(),i<=5&&(t.style.color="#ee545c",r.style.stroke="#ee545c"),r.style.strokeDashoffset=o+s*o,r.style.strokeDasharray=`${o} ${o}`,e>=f&&(clearInterval(this.quizInterval),t.innerHTML="",r.style.strokeDashoffset=o,this.quizInterval=0,setTimeout(()=>{n.default.getResults(this.mid)},3e3))},1e3)}this.answerDivs=Array.from(this.querySelectorAll(".poll-answer")),this.svgLines=Array.from(this.querySelectorAll(".poll-line")),this.numberDivs=Array.from(this.querySelectorAll(".poll-answer-percents"));const p=this.lastElementChild;this.viewResults=p.firstElementChild,this.votersCountDiv=p.lastElementChild,this.viewResults.addEventListener("click",e=>{o.cancelEvent(e),d.default.pollResultsTab.init(this.pollID,this.mid)}),c.ripple(this.viewResults),this.isMultiple&&(this.sendVoteBtn=document.createElement("div"),this.sendVoteBtn.classList.add("poll-footer-button","poll-send-vote"),this.sendVoteBtn.innerText="Vote",c.ripple(this.sendVoteBtn),e.chosenIndexes.length||this.votersCountDiv.classList.add("hide"),this.sendVoteBtn.addEventListener("click",()=>{this.chosingIndexes.length&&this.sendVotes(this.chosingIndexes).then(()=>{this.chosingIndexes.length=0,this.answerDivs.forEach(e=>{e.classList.remove("is-chosing")})})}),p.append(this.sendVoteBtn));const m=this.getBoundingClientRect().width;this.maxLength=m+9+this.maxOffset+-13.7,e.chosenIndexes.length||this.isClosed?this.performResults(t,e.chosenIndexes):this.isClosed||(this.setVotersCount(t),this.addEventListener("click",this.clickHandler))}disconnectedCallback(){h.findAndSplice(e=>e.element==this)}static get observedAttributes(){return["poll-id","message-id"]}attributeChangedCallback(e,t,s){"poll-id"==e?this.pollID=s:"message-id"==e&&(this.mid=+s)}adoptedCallback(){}initQuizHint(e){if(e.solution&&e.solution_entities){const t=document.createElement("div");if(t.classList.add("tgico-tip","poll-hint"),this.descDiv.append(t),t.addEventListener("click",s=>{o.cancelEvent(s),t.classList.add("active"),((e,t,s)=>{m&&p(m,g,b);const i=document.createElement("div");i.classList.add("quiz-hint");const n=document.createElement("div");n.classList.add("container","tgico");const o=document.createElement("div");o.classList.add("text"),n.append(o),i.append(n),o.innerHTML=a.RichTextProcessor.wrapRichText(e,{entities:t}),f.default.bubblesContainer.append(i),i.offsetLeft,i.classList.add("active"),m=i,g=s,b=setTimeout(()=>{p(i,s,b)},r.touchSupport?5e3:7e3)})(e.solution,e.solution_entities,()=>{t.classList.remove("active")})}),this.sentVote){const s=e.results.find(e=>e.pFlags.correct);s&&!s.pFlags.chosen&&t.click()}}}clickHandler(e){const t=o.findUpClassName(e.target,"poll-answer");if(!t)return;const s=+t.dataset.index;if(this.isMultiple){t.classList.toggle("is-chosing");const e=this.chosingIndexes.indexOf(s);-1!==e?this.chosingIndexes.splice(e,1):this.chosingIndexes.push(s)}else this.sendVotes([s])}sendVotes(e){if(this.sendVotePromise)return this.sendVotePromise;const t=this.answerDivs.filter((t,s)=>e.includes(s));return t.forEach(e=>{e.classList.add("is-voting")}),this.classList.add("disable-hover"),this.sentVote=!0,this.sendVotePromise=n.default.sendVote(this.mid,e).then(()=>{t.forEach(e=>{e.classList.remove("is-voting")}),this.classList.remove("disable-hover")}).catch(()=>{this.sentVote=!1}).finally(()=>{this.sendVotePromise=null})}performResults(e,t){var s,i;if(this.isQuiz&&((null===(s=e.results)||void 0===s?void 0:s.length)||this.isClosed)){this.answerDivs.forEach((t,s)=>{t.classList.toggle("is-correct",!!e.results[s].pFlags.correct)}),this.initQuizHint&&(this.initQuizHint(e),this.initQuizHint=null),this.quizInterval&&(clearInterval(this.quizInterval),this.quizInterval=0),(null===(i=this.quizTimer)||void 0===i?void 0:i.parentElement)&&this.quizTimer.remove();const t=this.descDiv.querySelector(".poll-time");t&&t.remove()}if(this.isClosed&&(this.classList.add("is-closed"),this.typeDiv.innerText="Final results"),(this.chosenIndexes.length!=t.length||this.isClosed)&&(this.isRetracted=this.chosenIndexes.length&&!t.length,this.chosenIndexes=t.slice(),this.isRetracted?this.addEventListener("click",this.clickHandler):this.removeEventListener("click",this.clickHandler)),this.chosenIndexes.length||this.isRetracted||this.isClosed){const t=e.results.map(t=>e.total_voters?t.voters/e.total_voters*100:0);this.setResults(this.isRetracted?this.percents:t,this.chosenIndexes),this.percents=t,this.isRetracted=!1}if(this.setVotersCount(e),this.isPublic){this.isMultiple||(this.viewResults.classList.toggle("hide",!e.total_voters||!this.chosenIndexes.length),this.votersCountDiv.classList.toggle("hide",!!this.chosenIndexes.length));let t="";e.recent_voters.forEach((e,s)=>{t+=`<avatar-element dialog="0" peer="${e}" ${0==s?"":`style="transform: translateX(-${3*s}px);"`}></avatar-element>`}),this.avatarsDiv.innerHTML=t}this.isMultiple&&(this.sendVoteBtn.classList.toggle("hide",!!this.chosenIndexes.length),this.chosenIndexes.length?this.isPublic?(this.viewResults.classList.toggle("hide",!e.total_voters||!this.chosenIndexes.length),this.votersCountDiv.classList.toggle("hide",!!this.chosenIndexes.length)):this.votersCountDiv.classList.toggle("hide",!this.chosenIndexes.length):(this.votersCountDiv.classList.add("hide"),this.viewResults.classList.add("hide")))}setResults(e,s){this.svgLines.forEach(e=>e.style.display=""),this.answerDivs.forEach((e,t)=>{e.classList.toggle("is-chosen",s.includes(t))});const i=Math.max(...e);if(this.maxLengths=e.map(e=>e/i*this.maxLength),this.isRetracted?this.svgLines.forEach((e,t)=>{this.setLineProgress(t,-1)}):this.svgLines.forEach((e,t)=>{e.getBoundingClientRect(),this.setLineProgress(t,1)}),e=e.slice(),t.roundPercents(e),this.isRetracted)for(let t=9,s=0;t>=0;--t,++s)setTimeout(()=>{e.forEach((e,s)=>{const i=Math.round(e/10*t);this.numberDivs[s].innerText=i+"%"})},34*s);else for(let t=0;t<10;++t)setTimeout(()=>{e.forEach((e,s)=>{const i=Math.round(e/10*(t+1));this.numberDivs[s].innerText=i+"%"})},34*t);this.isRetracted?(this.classList.add("is-retracting"),this.classList.remove("is-voted"),setTimeout(()=>{this.classList.remove("is-retracting"),this.svgLines.forEach(e=>e.style.display="none")},340)):this.classList.add("is-voted")}setVotersCount(e){const t=e.total_voters||0,s=this.isQuiz?t>1||!t?"answers":"answer":t>1||!t?"votes":"vote";this.votersCountDiv.innerText=""+(e.total_voters?e.total_voters+" "+s:"No "+s)}setLineProgress(e,t){const s=this.svgLines[e];-1==t?(s.style.strokeDasharray="",s.style.strokeDashoffset=""):(s.style.strokeDasharray=t*this.maxLengths[e]+", 485.9",s.style.strokeDashoffset=""+t*this.maxOffset)}}t.default=v,customElements.define("poll-element",v)},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readBlobAsText=void 0,t.readBlobAsText=e=>new Promise(t=>{const s=new FileReader;s.addEventListener("loadend",e=>{t(e.srcElement.result)}),s.readAsText(e)})},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=s(26);t.default=class{constructor(e,t){this.sidebarEl=e,this.tabs=t,this.historyTabIDs=[],this._selectTab=i.horizontalMenu(null,this.sidebarEl.querySelector(".sidebar-slider"),null,null,250),this._selectTab(0);let s=()=>{let e=this.historyTabIDs.pop();this.onCloseTab(e),this._selectTab(this.historyTabIDs[this.historyTabIDs.length-1]||0)};Array.from(this.sidebarEl.querySelectorAll(".sidebar-close-button")).forEach(e=>{e.addEventListener("click",s)})}selectTab(e){if(this.historyTabIDs[this.historyTabIDs.length-1]==e)return;const t=this.tabs[e];t&&(t.onOpen&&t.onOpen(),t.onOpenAfterTimeout&&setTimeout(()=>{t.onOpenAfterTimeout()},250)),this.historyTabIDs.push(e),this._selectTab(e)}removeTabFromHistory(e){this.historyTabIDs.findAndSplice(t=>t==e),this.onCloseTab(e)}onCloseTab(e){let t=this.tabs[e];t&&(t.onClose&&t.onClose(),t.onCloseAfterTimeout&&setTimeout(()=>{t.onCloseAfterTimeout()},250))}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(36),a=i(s(43)),o=s(3),r=i(s(6)),d=s(20),f=i(s(23)),l=s(4),c=i(s(18)),u=s(0),h=i(s(12));class p extends n.PopupElement{constructor(e){super("popup-stickers",null,{closable:!0,body:!0}),this.stickerSetInput=e,this.onFooterClick=()=>{this.stickersFooter.setAttribute("disabled","true"),a.default.toggleStickerSet(this.set).then(()=>{this.closeBtn.click()}).catch(()=>{this.stickersFooter.removeAttribute("disabled")})},this.onStickersClick=e=>{const t=u.findUpClassName(e.target,"sticker-set-sticker");if(!t)return;const s=t.dataset.docID;h.default.chatInputC.sendMessageWithDocument(s)?this.closeBtn.click():console.warn("got no doc by id:",s)},this.h6=document.createElement("h6"),this.h6.innerText="Loading...",this.header.append(this.h6),this.onClose=()=>{c.default.checkAnimations(!1),this.stickersFooter.removeEventListener("click",this.onFooterClick),this.stickersDiv.removeEventListener("click",this.onStickersClick),this.element.removeEventListener("click",t)},this.onCloseAfterTimeout=()=>{c.default.checkAnimations(void 0,"STICKERS-POPUP")};const t=e=>{u.findUpClassName(e.target,"popup-container")||this.closeBtn.click()};this.element.addEventListener("click",t);const s=document.createElement("div");s.classList.add("sticker-set"),this.stickersDiv=document.createElement("div"),this.stickersDiv.classList.add("sticker-set-stickers"),l.putPreloader(this.stickersDiv),this.stickersFooter=document.createElement("div"),this.stickersFooter.classList.add("sticker-set-footer"),s.append(this.stickersDiv),this.stickersFooter.innerText="Loading...",this.body.append(s);new r.default(this.body,"y",void 0);this.body.append(this.stickersFooter),this.loadStickerSet()}loadStickerSet(){return a.default.getStickerSet(this.stickerSetInput).then(e=>{this.set=e.set,c.default.checkAnimations(!0),this.h6.innerHTML=o.RichTextProcessor.wrapEmojiText(e.set.title),e.set.installed_date?this.stickersFooter.classList.remove("add"):this.stickersFooter.classList.add("add"),this.stickersFooter.innerHTML=e.set.hasOwnProperty("installed_date")?'<div style="cursor: pointer; margin: 0 auto; width: 150px;">Remove stickers</div>':`<button class="btn-primary">ADD ${e.set.count} STICKERS</button>`,this.stickersFooter.addEventListener("click",this.onFooterClick),e.documents.length&&this.stickersDiv.addEventListener("click",this.onStickersClick);const t=new f.default;this.stickersDiv.innerHTML="";for(let s of e.documents){const e=document.createElement("div");e.classList.add("sticker-set-sticker"),d.wrapSticker({doc:s,div:e,lazyLoadQueue:t,group:"STICKERS-POPUP",play:!0,loop:!0,width:80,height:80}),this.stickersDiv.append(e)}})}}t.default=p},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AppInlineBotsManager=void 0;const n=i(s(7)),a=i(s(2)),o=i(s(8)),r=i(s(33)),d=s(3),f=s(44),l=i(s(5)),c=i(s(13)),u=i(s(11));class h{constructor(){this.inlineResults={}}getInlineResults(e,t,s="",i="",n){return a.default.invokeApi("messages.getInlineBotResults",{flags:0|(n?1:0),bot:l.default.getUserInput(t),peer:o.default.getInputPeerByID(e),query:s,geo_point:n&&{_:"inputGeoPoint",lat:n.lat,long:n.long},offset:i},{timeout:1,stopTime:-1,noErrorBox:!0}).then(e=>{const s=e.query_id;return e.switch_pm&&(e.switch_pm.rText=d.RichTextProcessor.wrapRichText(e.switch_pm.text,{noLinebreaks:!0,noLinks:!0})),e.results.forEach(e=>{const i=s+"_"+e.id;e.qID=i,e.botID=t,e.rTitle=d.RichTextProcessor.wrapRichText(e.title,{noLinebreaks:!0,noLinks:!0}),e.rDescription=d.RichTextProcessor.wrapRichText(e.description,{noLinebreaks:!0,noLinks:!0}),e.initials=(e.url||e.title||e.type||"").substr(0,1),"botInlineMediaResult"==e._&&(e.document&&(e.document=u.default.saveDoc(e.document)),e.photo&&(e.photo=c.default.savePhoto(e.photo))),this.inlineResults[i]=e}),e})}callbackButtonClick(e,t){let s=n.default.getMessage(e),i=n.default.getMessagePeer(s);return a.default.invokeApi("messages.getBotCallbackAnswer",{flags:1,peer:o.default.getInputPeerByID(i),msg_id:r.default.getMessageLocalID(e),data:t.data},{timeout:1,stopTime:-1,noErrorBox:!0}).then(e=>{"string"==typeof e.message&&e.message.length&&f.toast(d.RichTextProcessor.wrapRichText(e.message,{noLinks:!0,noLinebreaks:!0}))})}}t.AppInlineBotsManager=h;const p=new h;t.default=p},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(0),a=i(s(11)),o=s(20),r=s(4);t.default=class{constructor(e){this.element=e}add(e,t,s){var i;let d=e.w,f=e.h;f<100&&(d*=100/f,f=100);let l=Math.min(300,400,d),{w:c,h:u}=n.calcImageInBox(d,f,l,100),h=document.createElement("div");h.classList.add("gif","fade-in-transition"),h.style.width=c+"px",h.style.opacity="0",h.dataset.docID=e.id,this.element.append(h);const p=a.default.getThumb(e,!1);let m;!!p&&(m=new Image,p.thumb.url||p.promise.then(()=>{m.src=p.thumb.url}));let g=!1;const b=()=>{g=!1,o.wrapVideo({doc:e,container:h,lazyLoadQueue:s,group:t,noInfo:!0});h.querySelector("video").addEventListener("canplay",()=>{h.style.opacity="",g?(m&&m.classList.remove("hide"),h.lastElementChild!=m&&h.lastElementChild.remove()):m&&m.classList.add("hide")},{once:!0})},v=()=>{m&&(h.append(m),h.style.opacity=""),s?b():(h.addEventListener("mouseover",b,{once:!0}),h.addEventListener("mouseout",e=>{const t=e.toElement;if(n.findUpClassName(t,"gif")==h)return;g=!0;const s=()=>{h.lastElementChild!=m&&h.lastElementChild.remove(),h.addEventListener("mouseover",b,{once:!0})};m&&m.classList.remove("hide"),m?window.requestAnimationFrame(()=>window.requestAnimationFrame(s)):s()}))};(null===(i=null==p?void 0:p.thumb)||void 0===i?void 0:i.url)?r.renderImageFromUrl(m,p.thumb.url,v):v()}}},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{constructor(e,t){this.container=e,this.handler=t,this.observeHeaders(),this.observeElements()}observeHeaders(){this.headersObserver=new IntersectionObserver(e=>{for(const t of e){const e=t.boundingClientRect,s=t.target.parentElement,i=t.rootBounds;e.bottom<i.top&&this.handler(!0,s),e.bottom>=i.top&&e.bottom<i.bottom&&this.handler(!1,s)}},{threshold:0,root:this.container})}observeElements(){this.elementsObserver=new IntersectionObserver(e=>{let t=e.filter(e=>e.boundingClientRect.top<0).sort((e,t)=>e.boundingClientRect.top-t.boundingClientRect.top)[0];if(!t)return;let s=t.isIntersecting?t.target:t.target.nextElementSibling;this.handler(!0,s)},{root:this.container})}addSentinel(e,t){const s=document.createElement("div");return s.classList.add("sticky_sentinel",t),e.appendChild(s)}observeStickyHeaderChanges(e){const t=this.addSentinel(e,"sticky_sentinel--top");this.headersObserver.observe(t),this.elementsObserver.observe(e)}disconnect(){this.headersObserver.disconnect(),this.elementsObserver.disconnect()}unobserve(e,t){this.elementsObserver.unobserve(e),this.headersObserver.unobserve(t)}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(31)),a=s(4),o=i(s(17)),r=i(s(2)),d=i(s(25)),f=s(1),l=i(s(103)),c=s(0);const u=new d.default("page-password",!0,()=>{let e,t=0,s=!1;const i=u.pageEl.querySelector("button"),d=document.getElementById("password"),h=d.nextElementSibling,p=u.pageEl.querySelector(".toggle-visible");let m=()=>l.default.getState().then(e=>{var t;v=e,h.innerText=null!==(t=v.hint)&&void 0!==t?t:"Password"}),g=e=>{i.removeAttribute("disabled"),e.type,i.innerText=e.type,m()};const b=function(i){c.cancelEvent(i),s=!s,this.classList.toggle("tgico-eye2",s),s?(d.setAttribute("type","text"),e.setDirection(1),e.curFrame=0,t=16,e.play()):(d.setAttribute("type","password"),e.setDirection(-1),e.curFrame=16,t=0,e.play())};let v;p.addEventListener("click",b),p.addEventListener("touchend",b),i.addEventListener("click",(function(t){if(!d.value.length)return void d.classList.add("error");this.setAttribute("disabled","true");let s=d.value;this.textContent="PLEASE WAIT...",a.putPreloader(this),l.default.check(s,v).then(t=>{switch(t._){case"auth.authorization":r.default.setUserAuth({id:t.user.id}),n.default.mount(),e&&e.remove();break;default:i.removeAttribute("disabled"),i.innerText=t._}}).catch(g)})),d.addEventListener("keypress",(function(e){if(this.classList.remove("error"),"Enter"==e.key)return i.click()}));const y=f.mediaSizes.isMobile?100:166;return Promise.all([o.default.loadAnimationFromURL({container:u.pageEl.querySelector(".auth-image"),loop:!1,autoplay:!1,width:y,height:y,noCache:!0},"assets/img/TwoFactorSetupMonkeyPeek.tgs").then(s=>{e=s,e.addListener("enterFrame",s=>{(1==e.direction&&s>=t||-1==e.direction&&s<=t)&&(e.setSpeed(1),e.pause())}),t=49}),m()])});t.default=u},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),s(67),s(68),s(69),document.addEventListener("DOMContentLoaded",()=>o(void 0,void 0,void 0,(function*(){const e=()=>{const e=.01*window.innerHeight;document.documentElement.style.setProperty("--vh",e+"px")};window.addEventListener("resize",e),e();const[t,i,n,o]=yield Promise.all([Promise.resolve().then(()=>a(s(1))),Promise.resolve().then(()=>a(s(2))),Promise.resolve().then(()=>a(s(24))),Promise.resolve().then(()=>a(s(16)))]),r=yield o.default.get("user_auth");t.isApple?(document.documentElement.classList.add("is-mac","emoji-supported"),t.isAppleMobile&&document.documentElement.classList.add("is-ios")):t.isAndroid&&document.documentElement.classList.add("is-android"),t.touchSupport||document.documentElement.classList.add("no-touch");const d=r.id||0;d?(yield Promise.resolve().then(()=>a(s(31)))).default.mount():(yield Promise.resolve().then(()=>a(s(48)))).default.mount();const f=yield Promise.resolve().then(()=>a(s(0)));f.$rootScope.myID=d;const l=f.findUpClassName;Array.from(document.body.getElementsByClassName("popup-close")).forEach(e=>{const t=l(e,"popup");e.addEventListener("click",()=>{t.classList.remove("active")})});const c=(yield Promise.resolve().then(()=>a(s(19)))).ripple;Array.from(document.getElementsByClassName("rp")).forEach(e=>c(e))})))},function(e,t,s){},function(e,t,s){},function(e,t,s){},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.notifyAll=t.notifySomeone=t.isWorker=t.isServiceWorker=t.isWebWorker=void 0,t.isWebWorker="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,t.isServiceWorker="undefined"!=typeof ServiceWorkerGlobalScope&&self instanceof ServiceWorkerGlobalScope,t.isWorker=t.isWebWorker||t.isServiceWorker;const i=(e,...t)=>{self.clients.matchAll({includeUncontrolled:!1,type:"window"}).then(s=>{s.length&&s.slice(e?0:-1).forEach(e=>{e.postMessage(...t)})})},n=(...e)=>{self.postMessage(...e)},a=()=>{};t.notifySomeone=t.isServiceWorker?i.bind(null,!1):t.isWebWorker?n:a,t.notifyAll=t.isServiceWorker?i.bind(null,!0):t.isWebWorker?n:a},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=s(21);t.default=class{sha1Hash(e){return this.performTaskWorker("sha1-hash",e)}sha256Hash(e){return this.performTaskWorker("sha256-hash",e)}pbkdf2(e,t,s){return this.performTaskWorker("pbkdf2",e,t,s)}aesEncrypt(e,t,s){return this.performTaskWorker("aes-encrypt",i.convertToArrayBuffer(e),i.convertToArrayBuffer(t),i.convertToArrayBuffer(s))}aesDecrypt(e,t,s){return this.performTaskWorker("aes-decrypt",e,t,s).then(e=>i.convertToArrayBuffer(e))}rsaEncrypt(e,t){return this.performTaskWorker("rsa-encrypt",e,t)}factorize(e){return e=i.convertToByteArray(e),this.performTaskWorker("factorize",e)}modPow(e,t,s){return this.performTaskWorker("mod-pow",e,t,s)}gzipUncompress(e,t){return this.performTaskWorker("gzipUncompress",e,t)}computeSRP(e,t){return this.performTaskWorker("computeSRP",e,t)}}},function(e,t,s){e.exports=function(){return new Worker(s.p+"b728a346dae6ae3292c0.worker.js")}},function(e,t,s){e.exports=function(){return new Worker(s.p+"9ec5bf231b8216403a20.worker.js")}},function(e,t,s){!function(){"use strict";e.exports={polyfill:function(){var e=window,t=document;if(!("scrollBehavior"in t.documentElement.style)||!0===e.__forceSmoothScrollPolyfill__){var s,i=e.HTMLElement||e.Element,n=468,a={scroll:e.scroll||e.scrollTo,scrollBy:e.scrollBy,elementScroll:i.prototype.scroll||d,scrollIntoView:i.prototype.scrollIntoView},o=e.performance&&e.performance.now?e.performance.now.bind(e.performance):Date.now,r=(s=e.navigator.userAgent,new RegExp(["MSIE ","Trident/","Edge/"].join("|")).test(s)?1:0);e.scroll=e.scrollTo=function(){void 0!==arguments[0]&&(!0!==f(arguments[0])?h.call(e,t.body,void 0!==arguments[0].left?~~arguments[0].left:e.scrollX||e.pageXOffset,void 0!==arguments[0].top?~~arguments[0].top:e.scrollY||e.pageYOffset):a.scroll.call(e,void 0!==arguments[0].left?arguments[0].left:"object"!=typeof arguments[0]?arguments[0]:e.scrollX||e.pageXOffset,void 0!==arguments[0].top?arguments[0].top:void 0!==arguments[1]?arguments[1]:e.scrollY||e.pageYOffset))},e.scrollBy=function(){void 0!==arguments[0]&&(f(arguments[0])?a.scrollBy.call(e,void 0!==arguments[0].left?arguments[0].left:"object"!=typeof arguments[0]?arguments[0]:0,void 0!==arguments[0].top?arguments[0].top:void 0!==arguments[1]?arguments[1]:0):h.call(e,t.body,~~arguments[0].left+(e.scrollX||e.pageXOffset),~~arguments[0].top+(e.scrollY||e.pageYOffset)))},i.prototype.scroll=i.prototype.scrollTo=function(){if(void 0!==arguments[0])if(!0!==f(arguments[0])){var e=arguments[0].left,t=arguments[0].top;h.call(this,this,void 0===e?this.scrollLeft:~~e,void 0===t?this.scrollTop:~~t)}else{if("number"==typeof arguments[0]&&void 0===arguments[1])throw new SyntaxError("Value could not be converted");a.elementScroll.call(this,void 0!==arguments[0].left?~~arguments[0].left:"object"!=typeof arguments[0]?~~arguments[0]:this.scrollLeft,void 0!==arguments[0].top?~~arguments[0].top:void 0!==arguments[1]?~~arguments[1]:this.scrollTop)}},i.prototype.scrollBy=function(){void 0!==arguments[0]&&(!0!==f(arguments[0])?this.scroll({left:~~arguments[0].left+this.scrollLeft,top:~~arguments[0].top+this.scrollTop,behavior:arguments[0].behavior}):a.elementScroll.call(this,void 0!==arguments[0].left?~~arguments[0].left+this.scrollLeft:~~arguments[0]+this.scrollLeft,void 0!==arguments[0].top?~~arguments[0].top+this.scrollTop:~~arguments[1]+this.scrollTop))},i.prototype.scrollIntoView=function(){if(!0!==f(arguments[0])){var s=function(e){for(;e!==t.body&&!1===(i=l(s=e,"Y")&&c(s,"Y"),n=l(s,"X")&&c(s,"X"),i||n);)e=e.parentNode||e.host;var s,i,n;return e}(this),i=s.getBoundingClientRect(),n=this.getBoundingClientRect();s!==t.body?(h.call(this,s,s.scrollLeft+n.left-i.left,s.scrollTop+n.top-i.top),"fixed"!==e.getComputedStyle(s).position&&e.scrollBy({left:i.left,top:i.top,behavior:"smooth"})):e.scrollBy({left:n.left,top:n.top,behavior:"smooth"})}else a.scrollIntoView.call(this,void 0===arguments[0]||arguments[0])}}function d(e,t){this.scrollLeft=e,this.scrollTop=t}function f(e){if(null===e||"object"!=typeof e||void 0===e.behavior||"auto"===e.behavior||"instant"===e.behavior)return!0;if("object"==typeof e&&"smooth"===e.behavior)return!1;throw new TypeError("behavior member of ScrollOptions "+e.behavior+" is not a valid value for enumeration ScrollBehavior.")}function l(e,t){return"Y"===t?e.clientHeight+r<e.scrollHeight:"X"===t?e.clientWidth+r<e.scrollWidth:void 0}function c(t,s){var i=e.getComputedStyle(t,null)["overflow"+s];return"auto"===i||"scroll"===i}function u(t){var s,i,a,r,d=(o()-t.startTime)/n;r=d=d>1?1:d,s=.5*(1-Math.cos(Math.PI*r)),i=t.startX+(t.x-t.startX)*s,a=t.startY+(t.y-t.startY)*s,t.method.call(t.scrollable,i,a),i===t.x&&a===t.y||e.requestAnimationFrame(u.bind(e,t))}function h(s,i,n){var r,f,l,c,h=o();s===t.body?(r=e,f=e.scrollX||e.pageXOffset,l=e.scrollY||e.pageYOffset,c=a.scroll):(r=s,f=s.scrollLeft,l=s.scrollTop,c=d),u({scrollable:r,method:c,startTime:h,startX:f,startY:l,x:i,y:n})}}}}()},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="(?:👨🏻‍🤝‍👨\ud83c[\udffc-\udfff]|👨🏼‍🤝‍👨\ud83c[\udffb\udffd-\udfff]|👨🏽‍🤝‍👨\ud83c[\udffb\udffc\udffe\udfff]|👨🏾‍🤝‍👨\ud83c[\udffb-\udffd\udfff]|👨🏿‍🤝‍👨\ud83c[\udffb-\udffe]|👩🏻‍🤝‍👨\ud83c[\udffc-\udfff]|👩🏻‍🤝‍👩\ud83c[\udffc-\udfff]|👩🏼‍🤝‍👨\ud83c[\udffb\udffd-\udfff]|👩🏼‍🤝‍👩\ud83c[\udffb\udffd-\udfff]|👩🏽‍🤝‍👨\ud83c[\udffb\udffc\udffe\udfff]|👩🏽‍🤝‍👩\ud83c[\udffb\udffc\udffe\udfff]|👩🏾‍🤝‍👨\ud83c[\udffb-\udffd\udfff]|👩🏾‍🤝‍👩\ud83c[\udffb-\udffd\udfff]|👩🏿‍🤝‍👨\ud83c[\udffb-\udffe]|👩🏿‍🤝‍👩\ud83c[\udffb-\udffe]|🧑🏻‍🤝‍🧑\ud83c[\udffb-\udfff]|🧑🏼‍🤝‍🧑\ud83c[\udffb-\udfff]|🧑🏽‍🤝‍🧑\ud83c[\udffb-\udfff]|🧑🏾‍🤝‍🧑\ud83c[\udffb-\udfff]|🧑🏿‍🤝‍🧑\ud83c[\udffb-\udfff]|🧑‍🤝‍🧑|👫\ud83c[\udffb-\udfff]|👬\ud83c[\udffb-\udfff]|👭\ud83c[\udffb-\udfff]|\ud83d[\udc6b-\udc6d])|(?:\ud83d[\udc68\udc69]|🧑)(?:\ud83c[\udffb-\udfff])?(?:⚕️|⚖️|✈️|\ud83c[\udf3e\udf73\udf7c\udf84\udf93\udfa4\udfa8\udfeb\udfed]|\ud83d[\udcbb\udcbc\udd27\udd2c\ude80\ude92]|\ud83e[\uddaf-\uddb3\uddbc\uddbd])|(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75]|⛹)((?:\ud83c[\udffb-\udfff]|)[♀♂])|(?:\ud83c[\udfc3\udfc4\udfca]|\ud83d[\udc6e\udc70\udc71\udc73\udc77\udc81\udc82\udc86\udc87\ude45-\ude47\ude4b\ude4d\ude4e\udea3\udeb4-\udeb6]|\ud83e[\udd26\udd35\udd37-\udd39\udd3d\udd3e\uddb8\uddb9\uddcd-\uddcf\uddd6-\udddd])(?:\ud83c[\udffb-\udfff])?[♀♂]|(?:👨‍❤️‍💋‍👨|👨‍👨‍👦‍👦|👨‍👨‍👧‍\ud83d[\udc66\udc67]|👨‍👩‍👦‍👦|👨‍👩‍👧‍\ud83d[\udc66\udc67]|👩‍❤️‍💋‍\ud83d[\udc68\udc69]|👩‍👩‍👦‍👦|👩‍👩‍👧‍\ud83d[\udc66\udc67]|👨‍❤️‍👨|👨‍👦‍👦|👨‍👧‍\ud83d[\udc66\udc67]|👨‍👨‍\ud83d[\udc66\udc67]|👨‍👩‍\ud83d[\udc66\udc67]|👩‍❤️‍\ud83d[\udc68\udc69]|👩‍👦‍👦|👩‍👧‍\ud83d[\udc66\udc67]|👩‍👩‍\ud83d[\udc66\udc67]|🏳️‍⚧️|🏳️‍🌈|🏴‍☠️|🐕‍🦺|🐻‍❄️|👁‍🗨|👨‍\ud83d[\udc66\udc67]|👩‍\ud83d[\udc66\udc67]|👯‍♀️|👯‍♂️|🤼‍♀️|🤼‍♂️|🧞‍♀️|🧞‍♂️|🧟‍♀️|🧟‍♂️|🐈‍⬛)|[#*0-9]?⃣|(?:[©®™♟])|(?:\ud83c[\udc04\udd70\udd71\udd7e\udd7f\ude02\ude1a\ude2f\ude37\udf21\udf24-\udf2c\udf36\udf7d\udf96\udf97\udf99-\udf9b\udf9e\udf9f\udfcd\udfce\udfd4-\udfdf\udff3\udff5\udff7]|\ud83d[\udc3f\udc41\udcfd\udd49\udd4a\udd6f\udd70\udd73\udd76-\udd79\udd87\udd8a-\udd8d\udda5\udda8\uddb1\uddb2\uddbc\uddc2-\uddc4\uddd1-\uddd3\udddc-\uddde\udde1\udde3\udde8\uddef\uddf3\uddfa\udecb\udecd-\udecf\udee0-\udee5\udee9\udef0\udef3]|[‼⁉ℹ↔-↙↩↪⌚⌛⌨⏏⏭-⏯⏱⏲⏸-⏺Ⓜ▪▫▶◀◻-◾☀-☄☎☑☔☕☘☠☢☣☦☪☮☯☸-☺♀♂♈-♓♠♣♥♦♨♻♿⚒-⚗⚙⚛⚜⚠⚡⚧⚪⚫⚰⚱⚽⚾⛄⛅⛈⛏⛑⛓⛔⛩⛪⛰-⛵⛸⛺⛽✂✈✉✏✒✔✖✝✡✳✴❄❇❗❣❤➡⤴⤵⬅-⬇⬛⬜⭐⭕〰〽㊗㊙])(?:|(?!))|(?:(?:\ud83c[\udfcb\udfcc]|\ud83d[\udd74\udd75\udd90]|[☝⛷⛹✌✍])(?:|(?!))|(?:\ud83c[\udf85\udfc2-\udfc4\udfc7\udfca]|\ud83d[\udc42\udc43\udc46-\udc50\udc66-\udc69\udc6e\udc70-\udc78\udc7c\udc81-\udc83\udc85-\udc87\udcaa\udd7a\udd95\udd96\ude45-\ude47\ude4b-\ude4f\udea3\udeb4-\udeb6\udec0\udecc]|\ud83e[\udd0c\udd0f\udd18-\udd1c\udd1e\udd1f\udd26\udd30-\udd39\udd3d\udd3e\udd77\uddb5\uddb6\uddb8\uddb9\uddbb\uddcd-\uddcf\uddd1-\udddd]|[✊✋]))(?:\ud83c[\udffb-\udfff])?|(?:🏴󠁧󠁢󠁥󠁮󠁧󠁿|🏴󠁧󠁢󠁳󠁣󠁴󠁿|🏴󠁧󠁢󠁷󠁬󠁳󠁿|🇦\ud83c[\udde8-\uddec\uddee\uddf1\uddf2\uddf4\uddf6-\uddfa\uddfc\uddfd\uddff]|🇧\ud83c[\udde6\udde7\udde9-\uddef\uddf1-\uddf4\uddf6-\uddf9\uddfb\uddfc\uddfe\uddff]|🇨\ud83c[\udde6\udde8\udde9\uddeb-\uddee\uddf0-\uddf5\uddf7\uddfa-\uddff]|🇩\ud83c[\uddea\uddec\uddef\uddf0\uddf2\uddf4\uddff]|🇪\ud83c[\udde6\udde8\uddea\uddec\udded\uddf7-\uddfa]|🇫\ud83c[\uddee-\uddf0\uddf2\uddf4\uddf7]|🇬\ud83c[\udde6\udde7\udde9-\uddee\uddf1-\uddf3\uddf5-\uddfa\uddfc\uddfe]|🇭\ud83c[\uddf0\uddf2\uddf3\uddf7\uddf9\uddfa]|🇮\ud83c[\udde8-\uddea\uddf1-\uddf4\uddf6-\uddf9]|🇯\ud83c[\uddea\uddf2\uddf4\uddf5]|🇰\ud83c[\uddea\uddec-\uddee\uddf2\uddf3\uddf5\uddf7\uddfc\uddfe\uddff]|🇱\ud83c[\udde6-\udde8\uddee\uddf0\uddf7-\uddfb\uddfe]|🇲\ud83c[\udde6\udde8-\udded\uddf0-\uddff]|🇳\ud83c[\udde6\udde8\uddea-\uddec\uddee\uddf1\uddf4\uddf5\uddf7\uddfa\uddff]|🇴🇲|🇵\ud83c[\udde6\uddea-\udded\uddf0-\uddf3\uddf7-\uddf9\uddfc\uddfe]|🇶🇦|🇷\ud83c[\uddea\uddf4\uddf8\uddfa\uddfc]|🇸\ud83c[\udde6-\uddea\uddec-\uddf4\uddf7-\uddf9\uddfb\uddfd-\uddff]|🇹\ud83c[\udde6\udde8\udde9\uddeb-\udded\uddef-\uddf4\uddf7\uddf9\uddfb\uddfc\uddff]|🇺\ud83c[\udde6\uddec\uddf2\uddf3\uddf8\uddfe\uddff]|🇻\ud83c[\udde6\udde8\uddea\uddec\uddee\uddf3\uddfa]|🇼\ud83c[\uddeb\uddf8]|🇽🇰|🇾\ud83c[\uddea\uddf9]|🇿\ud83c[\udde6\uddf2\uddfc]|\ud83c[\udccf\udd8e\udd91-\udd9a\udde6-\uddff\ude01\ude32-\ude36\ude38-\ude3a\ude50\ude51\udf00-\udf20\udf2d-\udf35\udf37-\udf7c\udf7e-\udf84\udf86-\udf93\udfa0-\udfc1\udfc5\udfc6\udfc8\udfc9\udfcf-\udfd3\udfe0-\udff0\udff4\udff8-\udfff]|\ud83d[\udc00-\udc3e\udc40\udc44\udc45\udc51-\udc65\udc6a\udc6f\udc79-\udc7b\udc7d-\udc80\udc84\udc88-\udca9\udcab-\udcfc\udcff-\udd3d\udd4b-\udd4e\udd50-\udd67\udda4\uddfb-\ude44\ude48-\ude4a\ude80-\udea2\udea4-\udeb3\udeb7-\udebf\udec1-\udec5\uded0-\uded2\uded5-\uded7\udeeb\udeec\udef4-\udefc\udfe0-\udfeb]|\ud83e[\udd0d\udd0e\udd10-\udd17\udd1d\udd20-\udd25\udd27-\udd2f\udd3a\udd3c\udd3f-\udd45\udd47-\udd76\udd78\udd7a-\uddb4\uddb7\uddba\uddbc-\uddcb\uddd0\uddde-\uddff\ude70-\ude74\ude78-\ude7a\ude80-\ude86\ude90-\udea8\udeb0-\udeb6\udec0-\udec2\uded0-\uded6]|[⏩-⏬⏰⏳♾⛎✅✨❌❎❓-❕➕-➗➰➿])|"},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toCodePoints=t.encodeEmoji=void 0,t.encodeEmoji=function(e){return o(a(e)).join("-")};const i=/\uFE0F/g,n=String.fromCharCode(8205),a=e=>e.indexOf(n)<0?e.replace(i,""):e;function o(e){const t=[];let s=0,i=0,n=0;for(;n<e.length;)s=e.charCodeAt(n++),i?(t.push((65536+(i-55296<<10)+(s-56320)).toString(16)),i=0):s>55296&&s<=56319?i=s:t.push(s.toString(16));return t.length&&2==t[0].length&&(t[0]="00"+t[0]),t}t.toCodePoints=o},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(48)),a=i(s(78)),o=i(s(31)),r=i(s(65)),d=i(s(17)),f=i(s(2)),l=i(s(25)),c=(s(30),s(1));let u=null;let h=null,p=null;const m=new l.default("page-authCode",!0,()=>{let e,t,s=0,i=0;const l=u.type.length,h=m.pageEl.querySelector("#code"),p=h.nextElementSibling,g=m.pageEl.querySelector(".phone-edit");h.focus(),g.addEventListener("click",(function(){return n.default.mount()}));let b=()=>{setTimeout(()=>{e&&e.remove(),t&&t.remove()},300)};h.addEventListener("input",(function(n){this.classList.remove("error"),this.value=this.value.replace(/\D/g,""),this.value.length>l&&(this.value=this.value.slice(0,l));let d,c=this.value.length;if(c==l)(e=>{h.setAttribute("disabled","true");let t={phone_number:u.phone_number,phone_code_hash:u.phone_code_hash,phone_code:e};f.default.invokeApi("auth.signIn",t,{ignoreErrors:!0}).then(e=>{switch(e._){case"auth.authorization":f.default.setUserAuth({id:e.user.id}),o.default.mount(),b();break;case"auth.authorizationSignUpRequired":a.default.mount({phone_number:u.phone_number,phone_code_hash:u.phone_code_hash}),b();break;default:h.innerText=e._}}).catch(e=>{switch(h.removeAttribute("disabled"),e.type){case"SESSION_PASSWORD_NEEDED":e.handled=!0,b(),r.default.mount();break;case"PHONE_CODE_EMPTY":case"PHONE_CODE_INVALID":h.classList.add("error"),p.innerText="Invalid Code";break;default:p.innerText=e.type}})})(this.value);else if(c==i)return;if(i=c,!e)return;c?(d=Math.round(Math.min(45,c)*(165/45)+11.33),t.canvas.style.display="none",e.canvas.style.display=""):d=0;let m=s>d?-1:1;e.setDirection(m),0!=s&&0==d&&e.setSpeed(7),s=d,e.play()}));let v=m.pageEl.querySelector(".auth-image");const y=c.mediaSizes.isMobile?100:166;return Promise.all([d.default.loadAnimationFromURL({container:v,loop:!0,autoplay:!0,width:y,height:y},"assets/img/TwoFactorSetupMonkeyIdle.tgs").then(e=>{t=e}),d.default.loadAnimationFromURL({container:v,loop:!1,autoplay:!1,width:y,height:y},"assets/img/TwoFactorSetupMonkeyTracking.tgs").then(i=>{e=i,h.value.length||(e.canvas.style.display="none"),e.addListener("enterFrame",i=>{(1==e.direction&&i>=s||-1==e.direction&&i<=s)&&(e.setSpeed(1),e.pause()),0==i&&0==s&&(e.curFrame=0,t&&(e.canvas.style.display="none",t.canvas.style.display="",t.restart()))})})])},e=>{switch(u=e,h||(h=m.pageEl.getElementsByClassName("phone")[0],p=m.pageEl.getElementsByClassName("sent-type")[0]),h.innerText=u.phone_number,u.type._){case"auth.sentCodeTypeSms":p.innerHTML="We have sent you an SMS<br>with the code.";break;case"auth.sentCodeTypeApp":p.innerHTML="We have sent you a message in Telegram<br>with the code.";break;case"auth.sentCodeTypeCall":p.innerHTML="We will call you and voice<br>the code.";break;default:p.innerHTML=`Please check everything<br>for a code (type: ${u.type._})`}});t.default=m},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(4),d=o(s(31)),f=o(s(2)),l=o(s(25)),c=o(s(45));let u=null;const h=new l.default("page-signUp",!0,()=>Promise.resolve().then(()=>a(s(27))).then(e=>{const t=h.pageEl,s=t.querySelector("#canvas-avatar"),i=e.default;let n;t.querySelector(".auth-image").addEventListener("click",()=>{c.default.open(s,e=>{n=e})});const a=t.getElementsByClassName("fullName")[0];let o=function(e){let t=l.value||"",s=p.value||"",i=t||s?(t+" "+s).trim():"Your Name";a.innerText!=i&&(a.innerText=i),this.classList.remove("error")};const l=document.getElementById("name");l.addEventListener("input",o);const p=document.getElementById("lastName");p.addEventListener("input",o);document.getElementById("signUp").addEventListener("click",(function(e){if(this.setAttribute("disabled","true"),!l.value.length)return l.classList.add("error"),!1;let t=l.value,s=p.value,a={phone_number:u.phone_number,phone_code_hash:u.phone_code_hash,first_name:t,last_name:s};this.textContent="PLEASE WAIT...",r.putPreloader(this),f.default.invokeApi("auth.signUp",a).then(e=>{switch(e._){case"auth.authorization":f.default.setUserAuth({id:e.user.id}),new Promise((e,t)=>{if(!n)return e();n().then(s=>{i.uploadProfilePhoto(s).then(e,t)},t)}).then(()=>{d.default.mount()},()=>{d.default.mount()});break;default:this.innerText=e._}}).catch(e=>{this.removeAttribute("disabled"),e.type,this.innerText=e.type})}))}),e=>{u=e});t.default=h},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(0),a=i(s(17)),o=s(26);const r=new class{constructor(){this.pageID=-1,this.pagesDiv=document.getElementById("auth-pages"),this.selectTab=o.horizontalMenu(null,this.pagesDiv.firstElementChild,null,null)}setPage(e){if(e.isAuthPage){this.pagesDiv.style.display="";let t=n.whichChild(e.pageEl);if(this.pageID==t)return;this.selectTab(t),-1!=this.pageID&&t>1&&a.default.loadLottieWorkers(),this.pageID=t}else this.pagesDiv.style.display="none",e.pageEl.style.display="",this.pageID=-1}};t.default=r},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.telegramMeWebService=t.TelegramMeWebService=void 0;const n=i(s(16)),a=s(30);class o{constructor(){this.disabled=a.Modes.test||-1==a.App.domains.indexOf(location.hostname)||"http:"!=location.protocol&&"https:"!=location.protocol||"https:"==location.protocol&&"web.telegram.org"!=location.hostname}setAuthorized(e){if(this.disabled)return!1;n.default.get("tgme_sync").then(t=>{var s=Date.now()/1e3;if(e&&t&&t.canRedirect==e&&t.ts+86400>s)return!1;n.default.set({tgme_sync:{canRedirect:e,ts:s}}),["//telegram.me/_websync_?authed="+(e?"1":"0"),"//t.me/_websync_?authed="+(e?"1":"0")].forEach(e=>{let t=document.createElement("script");t.onload=t.onerror=function(){t.remove()},t.src=e,document.body.appendChild(t)})})}}t.TelegramMeWebService=o,t.telegramMeWebService=new o},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeWaveform=void 0;const n=i(s(11)),a=s(3),o=s(20),r=i(s(35)),d=s(49),f=i(s(37)),l=s(1);function c(e){e instanceof Uint8Array||(e=new Uint8Array(e));var t=8*e.length/5|0;if(!t)return new Uint8Array([]);for(var s=new DataView(e.buffer),i=new Uint8Array(t),n=0;n<t;n++){var a=5*n/8|0,o=5*n%8,r=s.getUint16(a,!0);i[n]=r>>o&31}return i}t.decodeWaveform=c;class u extends HTMLElement{constructor(){super(),this.attachedHandlers={}}connectedCallback(){this.classList.add("audio");const e=+this.getAttribute("message-id"),t=this.getAttribute("doc-id"),s=n.default.getDoc(t),i=+s.id<0,u=String(0|s.duration).toHHMMSS(!0);this.innerHTML='<div class="audio-toggle audio-ico tgico-largeplay"></div>';const h=document.createElement("div");h.classList.add("audio-download"),i||"audio"==s.type||(h.innerHTML='<div class="tgico-download"></div>'),("audio"!=s.type||i)&&this.append(h);const p="voice"==s.type?function(e,t){t.classList.add("is-voice");const s=l.mediaSizes.isMobile?2:1,i=l.mediaSizes.isMobile?3:2,n=l.mediaSizes.isMobile?16:23,a=l.mediaSizes.isMobile?152:190,o=document.createElementNS("http://www.w3.org/2000/svg","svg");o.classList.add("audio-waveform"),o.setAttributeNS(null,"width",""+a),o.setAttributeNS(null,"height",""+n),o.setAttributeNS(null,"viewBox",`0 0 ${a} ${n}`);const r=document.createElement("div");r.classList.add("audio-time"),t.append(o,r);let d=e.attributes[0].waveform||[];d=c(d.slice());const f=Math.max(...d),u=d.length?d.length:100,h=Math.min(a/(2+s)|0,u);let p=0;const m=n-i;let g="";for(let e=0,t=0,a=0;e<u;++e){const o=d[e]||0;if(a+h>=u){a=a+h-u,a<(h+1)/2&&p<o&&(p=o);const e=Math.max((p*m+(f+1)/2)/(f+1),i);g+=`\n <rect x="${t}" y="${n-e}" width="2" height="${e}" rx="1" ry="1"></rect>\n `,t+=2+s,p=a<(h+1)/2?0:o}else p<o&&(p=o),a+=h}o.insertAdjacentHTML("beforeend",g);const b=Array.from(o.children);let v=t.querySelector(".audio-waveform");return()=>{let e=0,s=0,i=t.audio;(!i.paused||i.currentTime>0&&i.currentTime!=i.duration)&&(s=Math.round(i.currentTime/i.duration*h),b.slice(0,s+1).forEach(e=>e.classList.add("active")));let n=()=>{clearInterval(e),e=setInterval(()=>{s>o.childElementCount||isNaN(i.duration)||i.paused?clearInterval(e):(s=Math.round(i.currentTime/i.duration*h),b.slice(0,s+1).forEach(e=>e.classList.add("active")))},20)};i.paused||n(),t.addAudioListener("playing",()=>{n()}),t.addAudioListener("pause",()=>{clearInterval(e)}),t.addAudioListener("ended",()=>{clearInterval(e),b.forEach(e=>e.classList.remove("active"))});let r=!1,d=!1;function f(e){const t=e.offsetX/a*i.duration;s=Math.round(t/i.duration*h),b.slice(0,s+1).forEach(e=>e.classList.add("active"));for(let e=s+1;e<b.length;++e)b[e].classList.remove("active");i.currentTime=t}return v.addEventListener("mouseleave",e=>{r&&(i.play(),r=!1),d=!1}),v.addEventListener("mousemove",e=>{d=!0,r&&f(e)}),v.addEventListener("mousedown",e=>{e.preventDefault(),i.paused||(i.pause(),f(e),r=!0)}),v.addEventListener("mouseup",e=>{d&&r&&(i.play(),r=!1)}),v.addEventListener("click",e=>{i.paused||f(e)}),()=>{clearInterval(e),v.remove(),v=null,i=null}}}(s,this):function(e,t){const s=!!+t.getAttribute("with-time"),i=e.audioTitle||e.file_name;let n=e.audioPerformer?a.RichTextProcessor.wrapPlainText(e.audioPerformer):"";s?n+=(n?" · ":"")+o.formatDate(e.date):n||(n="Unknown Artist");const r=`\n <div class="audio-details">\n <div class="audio-title">${i}</div>\n <div class="audio-subtitle">${n}</div>\n <div class="audio-time"></div>\n </div>`;return t.insertAdjacentHTML("beforeend",r),()=>{const s=t.querySelector(".audio-subtitle");let i=!1,a=new d.MediaProgressLine(t.audio,e.supportsStreaming);t.addAudioListener("ended",()=>{t.classList.remove("audio-show-progress"),s.innerHTML=n,i=!1});const o=()=>{i||(t.classList.add("audio-show-progress"),i=!0,s.innerHTML="",a&&s.append(a.container))};return t.addAudioListener("playing",o),(!t.audio.paused||t.audio.currentTime>0)&&o(),()=>{a.removeListeners(),a.container.remove(),a=null}}}(s,this),m=this.querySelector(".audio-time");m.innerHTML=u;const g=(t=!0)=>{const i=this.audio=f.default.addMedia(s,e,t);this.onTypeDisconnect=p();const n=this.querySelector(".audio-toggle"),a=()=>{m.innerText=String(0|i.currentTime).toHHMMSS(!0)+" / "+u,i.paused||(n.classList.remove("tgico-largeplay"),n.classList.add("tgico-largepause"))};(!i.paused||i.currentTime>0&&i.currentTime!=i.duration)&&(a(),m.innerText=String(0|i.currentTime).toHHMMSS(!0)+" / "+u),n.addEventListener("click",()=>{i.paused?i.play().catch(()=>{}):i.pause()}),this.addAudioListener("ended",()=>{n.classList.add("tgico-largeplay"),n.classList.remove("tgico-largepause")}),this.addAudioListener("timeupdate",()=>{f.default.isSafariBuffering(i)||(m.innerText=String(0|i.currentTime).toHHMMSS(!0)+" / "+u)}),this.addAudioListener("pause",()=>{n.classList.add("tgico-largeplay"),n.classList.remove("tgico-largepause")}),this.addAudioListener("playing",a)};if(i)this.preloader.attach(h,!1);else{let t=this.preloader;if("voice"==s.type){let e;const i=()=>{e?e.cancel():(t||(t=new r.default(null,!0)),e=n.default.downloadDocNew(s.id),t.attach(h,!0,e),e.then(()=>{h.remove(),this.removeEventListener("click",i),g()}).catch(t=>{"AbortError"===t.name&&(e=null)}).finally(()=>{h.classList.remove("downloading")}),h.classList.add("downloading"))};this.addEventListener("click",i),this.click()}else{g(!1);const s=()=>{f.default.resolveWaitingForLoadMedia(e),f.default.willBePlayed(this.audio),t||(t=new r.default(null,!1)),l.isSafari&&(this.audio.autoplay=!0,this.audio.play().catch(()=>{})),t.attach(h),this.append(h),new Promise(e=>{this.audio.readyState>=2?e():this.addAudioListener("canplay",e)}).then(()=>{h.remove(),f.default.willBePlayedMedia==this.audio&&(this.audio.play(),f.default.willBePlayedMedia=null)})};this.addEventListener("click",s,{once:!0})}}}addAudioListener(e,t){this.attachedHandlers[e]||(this.attachedHandlers[e]=[]),this.attachedHandlers[e].push(t),this.audio.addEventListener(e,t)}disconnectedCallback(){this.onTypeDisconnect&&(this.onTypeDisconnect(),this.onTypeDisconnect=null);for(let e in this.attachedHandlers){for(let t of this.attachedHandlers[e])this.audio.removeEventListener(e,t);delete this.attachedHandlers[e]}this.preloader=null}static get observedAttributes(){return[]}attributeChangedCallback(e,t,s){}adoptedCallback(){}}t.default=u,customElements.define("audio-element",u)},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=o(s(29)),d=o(s(6)),f=o(s(23)),l=s(0),c=o(s(12)),u=o(s(43)),h=o(s(61)),p=o(s(18)),m=s(3),g=s(20),b=a(s(22));t.default=class{constructor(){this.container=document.getElementById("stickers-container"),this.contentDiv=this.container.querySelector(".sidebar-content"),this.backBtn=this.container.querySelector(".sidebar-close-button"),this.setsDiv=this.contentDiv.firstElementChild,this.scrollable=new d.default(this.contentDiv,"y","STICKERS-SEARCH",void 0,void 0,2),this.scrollable.setVirtualContainer(this.setsDiv),this.lazyLoadQueue=new f.default,this.searchInput=new r.default("Search Stickers",e=>{this.search(e)}),this.backBtn.parentElement.append(this.searchInput.container),this.setsDiv.addEventListener("click",e=>{const t=l.findUpClassName(e.target,"sticker-set-sticker");if(t){const e=t.dataset.docID;return void c.default.chatInputC.sendMessageWithDocument(e)}const s=l.findUpClassName(e.target,"sticker-set");if(!s)return;const i=s.dataset.stickerSet,n=s.dataset.stickerSet,a=l.findUpClassName(e.target,"sticker-set-button");a?(e.preventDefault(),e.cancelBubble=!0,a.setAttribute("disabled","true"),u.default.getStickerSet({id:i,access_hash:n}).then(e=>{u.default.toggleStickerSet(e.set).then(t=>{t&&(a.innerText=e.set.installed_date?"Added":"Add",a.classList.toggle("gray",!!e.set.installed_date))}).finally(()=>{a.removeAttribute("disabled")})})):u.default.getStickerSet({id:i,access_hash:n}).then(e=>{new h.default(e.set).show()})})}onCloseAfterTimeout(){this.setsDiv.innerHTML="",this.searchInput.value="",p.default.checkAnimations(void 0,"STICKERS-SEARCH")}renderSet(e){const t=document.createElement("div");t.classList.add("sticker-set");const s=document.createElement("div");s.classList.add("sticker-set-header");const i=document.createElement("div");i.classList.add("sticker-set-details"),i.innerHTML=`\n <div class="sticker-set-name">${m.RichTextProcessor.wrapEmojiText(e.title)}</div>\n <div class="sticker-set-count">${e.count} stickers</div>\n `;const n=document.createElement("button");n.classList.add("btn-primary","sticker-set-button"),n.innerText=e.installed_date?"Added":"Add",e.installed_date&&n.classList.add("gray"),s.append(i,n);const a=document.createElement("div");a.classList.add("sticker-set-stickers");const o=Math.min(5,e.count);for(let e=0;e<o;++e){const e=document.createElement("div");e.classList.add("sticker-set-sticker"),a.append(e)}u.default.getStickerSet(e).then(e=>{for(let t=0;t<o;++t){const s=a.children[t];g.wrapSticker({doc:e.documents[t],div:s,lazyLoadQueue:this.lazyLoadQueue,group:"STICKERS-SEARCH",play:!0,loop:!0,width:68,height:68})}}),t.dataset.stickerSet=e.id,t.dataset.access_hash=e.access_hash,t.dataset.title=e.title,t.append(s,a),this.scrollable.append(t)}init(){b.default.selectTab(b.AppSidebarRight.SLIDERITEMSIDS.stickers),b.default.toggleSidebar(!0).then(()=>{this.renderFeatured()})}renderFeatured(){return u.default.getFeaturedStickers().then(e=>{this.searchInput.value||(e=this.filterRendered("",e)).forEach(e=>{this.renderSet(e.set)})})}filterRendered(e,t){t=t.slice();return Array.from(this.setsDiv.children).forEachReverse(s=>{const i=s.dataset.stickerSet,n=t.findIndex(e=>e.set.id==i);-1!==n?t.splice(n,1):e&&s.dataset.title.toLowerCase().includes(e.toLowerCase())||s.remove()}),p.default.checkAnimations(void 0,"STICKERS-SEARCH"),t}search(e){return e?u.default.searchStickerSets(e,!1).then(t=>{this.searchInput.value==e&&(t=this.filterRendered(e,t)).forEach(e=>{this.renderSet(e.set)})}):this.renderFeatured()}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=o(s(6)),d=a(s(22)),f=o(s(39)),l=s(58),c=s(3),u=o(s(15)),h=s(19);t.default=class{constructor(){this.container=document.getElementById("poll-results-container"),this.contentDiv=this.container.querySelector(".sidebar-content"),this.resultsDiv=this.contentDiv.firstElementChild,this.scrollable=new r.default(this.contentDiv,"y","POLL-RESULTS",void 0,void 0,2)}cleanup(){this.resultsDiv.innerHTML="",this.pollID="",this.mid=0}onCloseAfterTimeout(){this.cleanup()}init(e,t){if(this.pollID==e&&this.mid==t)return;this.cleanup(),this.pollID=e,this.mid=t,d.default.selectTab(d.AppSidebarRight.SLIDERITEMSIDS.pollResults);const s=f.default.getPoll(e),i=document.createElement("h3");i.innerHTML=s.poll.rQuestion;const n=s.results.results.map(e=>e.voters/s.results.total_voters*100);l.roundPercents(n);const a=document.createDocumentFragment();s.results.results.forEach((e,i)=>{if(!e.voters)return;const o=document.createElement("hr"),r=s.poll.answers[i],d=document.createElement("div");d.classList.add("poll-results-answer");const l=document.createElement("div");l.innerHTML=c.RichTextProcessor.wrapEmojiText(r.text);const p=document.createElement("div");p.innerText=Math.round(n[i])+"%",d.append(l,p);const m=document.createElement("ul");m.classList.add("poll-results-voters"),u.default.setListClickListener(m),m.style.minHeight=50*Math.min(e.voters,4)+"px",a.append(o,d,m);let g,b=4,v=!1,y=e.voters-4;const w=()=>{v||(v=!0,f.default.getVotes(t,r.option,g,b).then(e=>{e.votes.forEach(e=>{const{dom:t}=u.default.addDialog(e.user_id,m,!1,!1,void 0,!1);t.lastMessageSpan.parentElement.remove()}),g&&(y-=e.votes.length,_.lastElementChild.innerText=`Show ${Math.min(20,y)} more voter${y>1?"s":""}`),g=e.next_offset,b=20,y&&e.votes.length||_.remove()}).finally(()=>{v=!1}))};if(w(),y<=0)return;const _=document.createElement("div");_.classList.add("poll-results-more","show-more"),_.addEventListener("click",w),_.innerHTML=`<div class="tgico-down"></div><div>Show ${Math.min(20,y)} more voter${y>1?"s":""}</div>`,h.ripple(_),a.append(_)}),this.resultsDiv.append(i,a),d.default.toggleSidebar(!0).then(()=>{})}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(s(29)),f=r(s(6)),l=r(s(23)),c=r(s(18)),u=a(s(22)),h=r(s(5)),p=r(s(62)),m=r(s(63)),g=s(0),b=r(s(12));t.default=class{constructor(){this.container=document.getElementById("search-gifs-container"),this.contentDiv=this.container.querySelector(".sidebar-content"),this.backBtn=this.container.querySelector(".sidebar-close-button"),this.gifsDiv=this.contentDiv.firstElementChild,this.nextOffset="",this.loadedAll=!1,this.onGifsClick=e=>{const t=g.findUpClassName(e.target,"gif");if(!t)return;const s=t.dataset.docID;b.default.chatInputC.sendMessageWithDocument(s)||console.warn("got no doc by id:",s)},this.scrollable=new f.default(this.contentDiv,"y","GIFS-SEARCH",void 0,void 0,2),this.scrollable.setVirtualContainer(this.gifsDiv),this.masonry=new m.default(this.gifsDiv),this.lazyLoadQueue=new l.default,this.searchInput=new d.default("Search GIFs",e=>{this.reset(),this.search(e)}),this.gifsDiv.addEventListener("click",this.onGifsClick),this.backBtn.parentElement.append(this.searchInput.container)}onClose(){this.scrollable.onScrolledBottom=()=>{}}onCloseAfterTimeout(){this.reset(),this.gifsDiv.innerHTML="",this.searchInput.value="",c.default.checkAnimations(void 0,"GIFS-SEARCH")}reset(){this.searchPromise=null,this.nextOffset="",this.loadedAll=!1,this.lazyLoadQueue.clear()}init(){u.default.selectTab(u.AppSidebarRight.SLIDERITEMSIDS.gifs),u.default.toggleSidebar(!0).then(()=>{this.search("",!0),this.reset(),this.scrollable.onScrolledBottom=()=>{this.search(this.searchInput.value,!1)}})}search(e,t=!0){return o(this,void 0,void 0,(function*(){if(!this.searchPromise&&!this.loadedAll){this.gifBotPeerID||(this.gifBotPeerID=(yield h.default.resolveUsername("gif")).id);try{this.searchPromise=p.default.getInlineResults(0,this.gifBotPeerID,e,this.nextOffset);const{results:s,next_offset:i}=yield this.searchPromise;if(this.searchInput.value!=e)return;this.searchPromise=null,this.nextOffset=i,t&&(this.gifsDiv.innerHTML=""),s.length?s.forEach(e=>{"botInlineMediaResult"===e._&&e.document&&this.masonry.add(e.document,"GIFS-SEARCH",this.lazyLoadQueue)}):this.loadedAll=!0,this.scrollable.onScroll()}catch(e){throw new Error(JSON.stringify(e))}}}))}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=o(s(45)),d=o(s(9)),f=a(s(14));t.default=class{constructor(){this.container=document.querySelector(".new-channel-container"),this.canvas=this.container.querySelector(".avatar-edit-canvas"),this.channelNameInput=this.container.querySelector(".new-channel-name"),this.channelDescriptionInput=this.container.querySelector(".new-channel-description"),this.nextBtn=this.container.querySelector(".btn-corner"),this.backBtn=this.container.querySelector(".sidebar-close-button"),this.uploadAvatar=null,this.container.querySelector(".avatar-edit").addEventListener("click",()=>{r.default.open(this.canvas,e=>{this.uploadAvatar=e})}),this.channelNameInput.addEventListener("input",()=>{this.channelNameInput.value.length?this.nextBtn.classList.add("is-visible"):this.nextBtn.classList.remove("is-visible")}),this.nextBtn.addEventListener("click",()=>{let e=this.channelNameInput.value,t=this.channelDescriptionInput.value;this.nextBtn.disabled=!0,d.default.createChannel(e,t).then(e=>{this.uploadAvatar&&this.uploadAvatar().then(t=>{d.default.editPhoto(e,t)}),f.default.removeTabFromHistory(f.AppSidebarLeft.SLIDERITEMSIDS.newChannel),f.default.addMembersTab.init(e,"channel",!0)})})}onCloseAfterTimeout(){this.canvas.getContext("2d").clearRect(0,0,this.canvas.width,this.canvas.height),this.uploadAvatar=null,this.channelNameInput.value="",this.channelDescriptionInput.value="",this.nextBtn.disabled=!1}}},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var s,i,n,a={},o=1,r=0,d=0,f=0,l=0;function c(){if(e.dataset.isCrop)throw"image is already crop";e.dataset.isCrop="true",e.classList.add("crop-blur"),e.draggable=!1,(n=new Image).crossOrigin=e.crossOrigin,n.src=e.src,n.draggable=!1,t||(t=document.createElement("canvas")),(s=document.createElement("div")).classList.add("crop-component"),(i=document.createElement("div")).classList.add("overlay");let a=document.createElement("div");a.classList.add("crop-overlay-color"),s.appendChild(i),e.parentNode.appendChild(s),s.appendChild(n),s.appendChild(e),s.appendChild(a),i.appendChild(n),n.style.maxWidth=e.width+"px",u(e.offsetWidth/2-100,e.offsetHeight/2-100),i.addEventListener("mousedown",b,!1),i.addEventListener("touchstart",b,!1),i.addEventListener("wheel",g,!1),document.addEventListener("keypress",m,!1)}function u(e,t){r=-e*o,d=-t*o,n.style.top=-t+"px",n.style.left=-e+"px"}function h(e,t){let s=t+100+"px",n=e+100+"px";i.style.top=s,i.style.left=n}function p(e){e=e*Math.PI*2;var t,s,a,r,d,f,l=Math.floor(i.clientWidth+e),c=Math.floor(i.clientHeight+e),p=n.clientWidth,m=n.clientHeight;l<50||(l>p||(a=(t=i.offsetLeft-e/2)+l,r=(s=i.offsetTop-e/2)+c,t<0&&(t=0),s<0&&(s=0),a>p||r>m||(o=200/l,d=l,f=l,i.style.width=d+"px",i.style.height=f+"px",u(t,s),h(t,s))))}function m(e){switch(e.preventDefault(),String.fromCharCode(e.charCode)){case"+":p(4);break;case"-":p(-4)}}function g(e){e.preventDefault(),p(e.deltaY>0?1:-1)}function b(e){e.preventDefault(),e.stopPropagation(),function(e){a.container_width=i.offsetWidth,a.container_height=i.offsetHeight,a.container_left=i.offsetLeft,a.container_top=i.offsetTop,a.mouse_x=(e.clientX||e.pageX||e.touches&&e.touches[0].clientX)+window.scrollX,a.mouse_y=(e.clientY||e.pageY||e.touches&&e.touches[0].clientY)+window.scrollY}(e),document.addEventListener("mousemove",y),document.addEventListener("touchmove",y),document.addEventListener("mouseup",v),document.addEventListener("touchend",v)}function v(e){e.preventDefault(),document.removeEventListener("mouseup",v),document.removeEventListener("touchend",v),document.removeEventListener("mousemove",y),document.removeEventListener("touchmove",y)}function y(e){var t,s,o,r,d={x:0,y:0};e.preventDefault(),e.stopPropagation(),d.x=e.pageX||e.touches&&e.touches[0].pageX,d.y=e.pageY||e.touches&&e.touches[0].pageY,t=d.x-(a.mouse_x-a.container_left),s=d.y-(a.mouse_y-a.container_top),o=i.offsetWidth,r=i.offsetHeight,t<0?t=0:t>n.offsetWidth-o&&(t=n.offsetWidth-o),s<0?s=0:s>n.offsetHeight-r&&(s=n.offsetHeight-r),u(t,s),h(t,s)}return e.complete?c():e.onload=c,{crop:function(){f=n.width*o,l=n.height*o,t.width=200,t.height=200,t.getContext("2d").drawImage(n,r,d,f,l)},removeHandlers:function(){i.removeEventListener("mousedown",b),i.removeEventListener("touchstart",b),i.removeEventListener("wheel",g),document.removeEventListener("mouseup",v),document.removeEventListener("touchend",v),document.removeEventListener("mousemove",y),document.removeEventListener("touchmove",y),document.removeEventListener("keypress",m),s.remove(),i.remove(),n.remove()}}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(51),d=s(4),f=o(s(9)),l=a(s(14));t.default=class{constructor(){this.container=document.querySelector(".addmembers-container"),this.contentDiv=this.container.querySelector(".sidebar-content"),this.backBtn=this.container.querySelector(".sidebar-close-button"),this.nextBtn=this.contentDiv.querySelector(".btn-corner"),this.nextBtn.addEventListener("click",()=>{if(this.skippable)return void this.backBtn.click();const e=this.selector.getSelected();if(e.length){if(this.takeOut)return void this.takeOut(e);this.nextBtn.classList.remove("tgico-next"),this.nextBtn.disabled=!0,d.putPreloader(this.nextBtn),this.selector.freezed=!0,f.default.inviteToChannel(this.peerID,e).then(()=>{this.backBtn.click()})}})}onCloseAfterTimeout(){this.selector&&(this.selector.container.remove(),this.selector=null)}init(e,t,s,i){this.peerID=Math.abs(e),this.peerType=t,this.takeOut=i,this.skippable=s,this.onCloseAfterTimeout(),this.selector=new r.AppSelectPeers(this.contentDiv,s?null:e=>{this.nextBtn.classList.toggle("is-visible",!!e)},["contacts"]),this.nextBtn.innerHTML="",this.nextBtn.disabled=!1,this.nextBtn.classList.add("tgico-next"),this.nextBtn.classList.toggle("is-visible",s),l.default.selectTab(l.AppSidebarLeft.SLIDERITEMSIDS.addMembers)}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=o(s(6)),d=o(s(15)),f=o(s(5)),l=o(s(13)),c=a(s(14)),u=s(0),h=o(s(29));t.default=class{constructor(){this.container=document.getElementById("contacts-container"),this.list=this.container.querySelector("#contacts"),d.default.setListClickListener(this.list),this.scrollable=new r.default(this.list.parentElement),this.searchInput=new h.default("Search",e=>{this.list.innerHTML="",this.openContacts(e)}),this.container.firstElementChild.append(this.searchInput.container)}onClose(){let e=l.default.windowH/72*1.25|0;Array.from(this.list.children).slice(e).forEach(e=>e.remove())}onCloseAfterTimeout(){this.list.innerHTML="",this.searchInput.value=""}openContacts(e){if(-1===c.default.historyTabIDs.indexOf(c.AppSidebarLeft.SLIDERITEMSIDS.contacts)&&c.default.selectTab(c.AppSidebarLeft.SLIDERITEMSIDS.contacts),this.promise)return this.promise;this.scrollable.onScrolledBottom=null,this.promise=f.default.getContacts(e).then(e=>{if(this.promise=null,c.default.historyTabIDs[c.default.historyTabIDs.length-1]!=c.AppSidebarLeft.SLIDERITEMSIDS.contacts)return void console.warn("user closed contacts before it's loaded");const t=[...e];t.findAndSplice(e=>e==u.$rootScope.myID);let s=t.map(e=>{let t=f.default.getUser(e);return{user:t,status:f.default.getUserStatusForSort(t.status)}}).sort((e,t)=>t.status-e.status),i=()=>{let e=l.default.windowH/72*1.25|0;s.splice(0,e).forEach(({user:e})=>{let{dialog:t,dom:s}=d.default.addDialog(e.id,this.list,!1),i=f.default.getUserStatusString(e.id);s.lastMessageSpan.innerHTML="online"==i?`<i>${i}</i>`:i}),s.length||(i=void 0)};i(),this.scrollable.onScrolledBottom=()=>{i?i():this.scrollable.onScrolledBottom=null}})}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(42),d=o(s(45)),f=o(s(9)),l=a(s(14)),c=o(s(6)),u=o(s(15)),h=o(s(5));t.default=class{constructor(){this.container=document.querySelector(".new-group-container"),this.contentDiv=this.container.querySelector(".sidebar-content"),this.canvas=this.container.querySelector(".avatar-edit-canvas"),this.groupNameInput=this.container.querySelector(".new-group-name"),this.nextBtn=this.container.querySelector(".btn-corner"),this.searchGroup=new r.SearchGroup(" ","contacts",!0,"new-group-members disable-hover",!1),this.uploadAvatar=null,this.container.querySelector(".avatar-edit").addEventListener("click",()=>{d.default.open(this.canvas,e=>{this.uploadAvatar=e})}),this.groupNameInput.addEventListener("input",()=>{const e=this.groupNameInput.value;this.nextBtn.classList.toggle("is-visible",!!e.length)}),this.nextBtn.addEventListener("click",()=>{const e=this.groupNameInput.value;this.nextBtn.disabled=!0,f.default.createChat(e,this.userIDs).then(e=>{this.uploadAvatar&&this.uploadAvatar().then(t=>{f.default.editPhoto(e,t)}),l.default.selectTab(0)})});const e=document.createElement("div");e.classList.add("chats-container"),e.append(this.searchGroup.container);new c.default(e);this.contentDiv.append(e)}onClose(){}onCloseAfterTimeout(){this.searchGroup.clear();this.canvas.getContext("2d").clearRect(0,0,this.canvas.width,this.canvas.height),this.uploadAvatar=null,this.groupNameInput.value="",this.nextBtn.disabled=!1,this.searchGroup.clear()}init(e){this.userIDs=e,l.default.selectTab(l.AppSidebarLeft.SLIDERITEMSIDS.newGroup),this.userIDs.forEach(e=>{let{dom:t}=u.default.addDialog(e,this.searchGroup.list,!1,!1),s="";s=h.default.getUserStatusString(e),"online"==s&&(s=`<i>${s}</i>`),s&&(t.lastMessageSpan.innerHTML=s)}),this.searchGroup.nameEl.innerText=this.userIDs.length+" members",this.searchGroup.setActive()}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(4),d=s(0),f=o(s(2)),l=a(s(14)),c=o(s(5));t.default=class{constructor(){this.container=document.querySelector(".settings-container"),this.avatarElem=this.container.querySelector(".profile-avatar"),this.nameDiv=this.container.querySelector(".profile-name"),this.phoneDiv=this.container.querySelector(".profile-subtitle"),this.logOutBtn=this.container.querySelector(".menu-logout"),this.buttons={},r.parseMenuButtonsTo(this.buttons,this.container.querySelector(".profile-buttons").children),d.$rootScope.$on("user_auth",e=>{this.fillElements()}),this.logOutBtn.addEventListener("click",e=>{f.default.logOut().finally(()=>{localStorage.clear(),location.reload()})}),this.buttons.edit.addEventListener("click",()=>{l.default.editProfileTab.fillElements(),l.default.selectTab(l.AppSidebarLeft.SLIDERITEMSIDS.editProfile)}),this.buttons.folders.addEventListener("click",()=>{l.default.selectTab(l.AppSidebarLeft.SLIDERITEMSIDS.chatFolders)})}fillElements(){let e=c.default.getSelf();this.avatarElem.setAttribute("peer",""+e.id),this.nameDiv.innerHTML=e.rFullName||"",this.phoneDiv.innerHTML=e.rPhone||""}onClose(){}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(45)),a=i(s(2)),o=i(s(27)),r=i(s(14)),d=i(s(6)),f=i(s(5)),l=s(0);t.default=class{constructor(){this.container=document.querySelector(".edit-profile-container"),this.scrollWrapper=this.container.querySelector(".scroll-wrapper"),this.nextBtn=this.container.querySelector(".btn-corner"),this.canvas=this.container.querySelector(".avatar-edit-canvas"),this.uploadAvatar=null,this.firstNameInput=this.container.querySelector(".firstname"),this.lastNameInput=this.container.querySelector(".lastname"),this.bioInput=this.container.querySelector(".bio"),this.userNameInput=this.container.querySelector(".username"),this.avatarElem=document.createElement("avatar-element"),this.profileUrlContainer=this.container.querySelector(".profile-url-container"),this.profileUrlAnchor=this.profileUrlContainer.lastElementChild,this.originalValues={firstName:"",lastName:"",userName:"",bio:""},this.container.querySelector(".avatar-edit").addEventListener("click",()=>{n.default.open(this.canvas,e=>{this.uploadAvatar=e,this.handleChange(),this.avatarElem.remove()})}),this.avatarElem.classList.add("avatar-placeholder");let e=this.userNameInput.nextElementSibling;this.firstNameInput.addEventListener("input",()=>this.handleChange()),this.lastNameInput.addEventListener("input",()=>this.handleChange()),this.bioInput.addEventListener("input",()=>this.handleChange()),this.userNameInput.addEventListener("input",()=>{let t=this.userNameInput.value;return t!=this.originalValues.userName&&t.length?(this.isUsernameValid(t)?this.userNameInput.classList.remove("valid","error"):(this.userNameInput.classList.add("error"),this.userNameInput.classList.remove("valid"),e.innerText="Username is invalid"),this.userNameInput.classList.contains("error")?(this.setProfileUrl(),void this.handleChange()):void a.default.invokeApi("account.checkUsername",{username:t}).then(s=>{this.userNameInput.value==t&&(s?(this.userNameInput.classList.add("valid"),this.userNameInput.classList.remove("error"),e.innerText="Username is available"):(this.userNameInput.classList.add("error"),this.userNameInput.classList.remove("valid"),e.innerText="Username is already taken"))},s=>{if(this.userNameInput.value==t)switch(s.type){case"USERNAME_INVALID":this.userNameInput.classList.add("error"),this.userNameInput.classList.remove("valid"),e.innerText="Username is invalid"}}).then(()=>{this.handleChange(),this.setProfileUrl()})):(this.userNameInput.classList.remove("valid","error"),e.innerText="Username (optional)",this.setProfileUrl(),void this.handleChange())}),this.nextBtn.addEventListener("click",()=>{this.nextBtn.disabled=!0;let e=[];e.push(o.default.updateProfile(this.firstNameInput.value,this.lastNameInput.value,this.bioInput.value).then(()=>{r.default.selectTab(0)},e=>{console.error("updateProfile error:",e)})),this.uploadAvatar&&e.push(this.uploadAvatar().then(e=>{o.default.uploadProfilePhoto(e)})),this.userNameInput.value!=this.originalValues.userName&&this.userNameInput.classList.contains("valid")&&e.push(o.default.updateUsername(this.userNameInput.value)),Promise.race(e).then(()=>{this.nextBtn.disabled=!1},()=>{this.nextBtn.disabled=!1})});new d.default(this.scrollWrapper,"y")}fillElements(){var e,t,s;let i=f.default.getSelf();this.firstNameInput.value=this.originalValues.firstName=null!==(e=i.first_name)&&void 0!==e?e:"",this.lastNameInput.value=this.originalValues.lastName=null!==(t=i.last_name)&&void 0!==t?t:"",this.userNameInput.value=this.originalValues.userName=null!==(s=i.username)&&void 0!==s?s:"",this.userNameInput.classList.remove("valid","error"),this.userNameInput.nextElementSibling.innerHTML="Username (optional)",o.default.getProfile(i.id).then(e=>{e.rAbout&&(this.bioInput.value=this.originalValues.bio=e.rAbout)}),this.avatarElem.setAttribute("peer",""+l.$rootScope.myID),this.avatarElem.parentElement||this.canvas.parentElement.append(this.avatarElem),this.uploadAvatar=null,this.setProfileUrl()}isUsernameValid(e){return(e.length>=5&&e.length<=32||!e.length)&&/^[a-zA-Z0-9_]*$/.test(e)}isChanged(){return!!this.uploadAvatar||this.firstNameInput.value!=this.originalValues.firstName||this.lastNameInput.value!=this.originalValues.lastName||this.userNameInput.value!=this.originalValues.userName&&!this.userNameInput.classList.contains("error")||this.bioInput.value!=this.originalValues.bio}setProfileUrl(){if(this.userNameInput.classList.contains("error")||!this.userNameInput.value.length)this.profileUrlContainer.style.display="none";else{this.profileUrlContainer.style.display="";let e="https://t.me/"+this.userNameInput.value;this.profileUrlAnchor.innerText=e,this.profileUrlAnchor.href=e}}handleChange(){this.isChanged()?this.nextBtn.classList.add("is-visible"):this.nextBtn.classList.remove("is-visible")}onCloseAfterTimeout(){this.nextBtn.classList.remove("is-visible")}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=i(s(17)),a=i(s(2)),o=i(s(7)),r=s(3),d=i(s(8)),f=s(0),l=i(s(14)),c=s(19),u=s(44);t.default=class{constructor(){this.filtersRendered={}}renderFolder(e,t,s=document.createElement("div")){let i,n="",a=[];if("dialogFilterSuggested"==e._)i=e.filter,n=e.description;else{i=e,n="";const t=i.id;if(this.filtersRendered.hasOwnProperty(i.id)||s.addEventListener("click",()=>{l.default.editFolderTab.open(o.default.filtersStorage.filters[t])}),this.filtersRendered[i.id]=s,1==Object.keys(i.pFlags).length){n="All ";const e=i.pFlags;e.contacts?n+="Contacts":e.non_contacts?n+="Non-Contacts":e.groups?n+="Groups":e.broadcasts?n+="Channels":e.bots?n+="Bots":e.exclude_muted?n+="Unmuted":e.exclude_read?n+="Unread":e.exclude_archived&&(n+="Unarchived"),a.push(n)}else{const e=o.default.dialogsStorage.getFolder(i.id);let t=0,s=0,n=0;for(const i of e)d.default.isAnyGroup(i.peerID)?n++:d.default.isBroadcast(i.peerID)?s++:t++;t&&a.push(t+" chats"),s&&a.push(s+" channels"),n&&a.push(n+" groups")}}return s.classList.add("category","rp-square"),s.innerHTML=`\n <div>\n <p>${r.RichTextProcessor.wrapEmojiText(i.title)}</p>\n <p>${a.length?a.join(", "):n}</p>\n </div>\n `,c.ripple(s),t&&t.append(s),s}init(){this.container=document.querySelector(".chat-folders-container"),this.stickerContainer=this.container.querySelector(".sticker-container"),this.foldersContainer=this.container.querySelector(".folders-my"),this.suggestedContainer=this.container.querySelector(".folders-suggested"),this.createFolderBtn=this.container.querySelector(".btn-create-folder"),this.createFolderBtn.addEventListener("click",()=>{Object.keys(this.filtersRendered).length>=10?u.toast("Sorry, you can't create more folders."):l.default.editFolderTab.open()}),n.default.loadAnimationFromURL({container:this.stickerContainer,loop:!1,autoplay:!0,width:86,height:86},"assets/img/Folders_1.tgs").then(e=>{this.animation=e}),o.default.filtersStorage.getDialogFilters().then(e=>{for(const t in e){const s=e[t];this.renderFolder(s,this.foldersContainer)}}),f.$rootScope.$on("filter_update",e=>{const t=e.detail;this.filtersRendered.hasOwnProperty(t.id)?this.renderFolder(t,null,this.filtersRendered[t.id]):this.renderFolder(t,this.foldersContainer),this.getSuggestedFilters()}),f.$rootScope.$on("filter_delete",e=>{const t=e.detail;this.filtersRendered.hasOwnProperty(t.id)&&(this.getSuggestedFilters(),this.filtersRendered[t.id].remove(),delete this.filtersRendered[t.id])}),this.getSuggestedFilters()}getSuggestedFilters(){a.default.invokeApi("messages.getSuggestedDialogFilters").then(e=>{this.suggestedContainer.style.display=e.length?"":"none",Array.from(this.suggestedContainer.children).slice(1).forEach(e=>e.remove()),e.forEach(e=>{const t=this.renderFolder(e),s=document.createElement("button");s.classList.add("btn-primary"),s.innerText="Add",t.append(s),this.suggestedContainer.append(t),s.addEventListener("click",i=>{f.cancelEvent(i),Object.keys(this.filtersRendered).length>=10?u.toast("Sorry, you can't create more folders."):(s.setAttribute("disabled","true"),o.default.filtersStorage.createDialogFilter(e.filter).then(e=>{e&&t.remove()}).finally(()=>{s.removeAttribute("disabled")}))})})})}onOpen(){this.init?(this.init(),this.init=null):this.animation&&this.animation.restart()}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=a(s(14)),d=o(s(17)),f=o(s(7)),l=s(4),c=o(s(15)),u=s(0),h=s(44),p=s(19);t.default=class{constructor(){this.flags={}}init(){this.container=document.querySelector(".edit-folder-container"),this.closeBtn=this.container.querySelector(".sidebar-close-button"),this.title=this.container.querySelector(".sidebar-header__title"),this.caption=this.container.querySelector(".caption"),this.stickerContainer=this.container.querySelector(".sticker-container"),this.confirmBtn=this.container.querySelector(".btn-confirm"),this.menuBtn=this.container.querySelector(".btn-menu-toggle"),this.deleteFolderBtn=this.menuBtn.querySelector(".menu-delete"),this.nameInput=this.container.querySelector("#folder-name"),this.include_peers=this.container.querySelector(".folder-list-included"),this.exclude_peers=this.container.querySelector(".folder-list-excluded");const e=this.include_peers.querySelector(".folder-categories"),t=this.exclude_peers.querySelector(".folder-categories");l.parseMenuButtonsTo(this.flags,e.children),l.parseMenuButtonsTo(this.flags,t.children),e.firstElementChild.addEventListener("click",()=>{r.default.includedChatsTab.open(this.filter,"included")}),t.firstElementChild.addEventListener("click",()=>{r.default.includedChatsTab.open(this.filter,"excluded")}),d.default.loadAnimationFromURL({container:this.stickerContainer,loop:!0,autoplay:!0,width:86,height:86},"assets/img/Folders_2.tgs").then(e=>{this.animation=e}),this.deleteFolderBtn.addEventListener("click",()=>{this.deleteFolderBtn.setAttribute("disabled","true"),f.default.filtersStorage.updateDialogFilter(this.filter,!0).then(e=>{e&&this.closeBtn.click()}).finally(()=>{this.deleteFolderBtn.removeAttribute("disabled")})}),this.confirmBtn.addEventListener("click",()=>{if(!this.nameInput.value.trim())return void this.nameInput.classList.add("error");let t,s=Array.from(e.children).slice(1).reduce((e,t)=>e+ +!t.style.display,0);"UL"==this.include_peers.lastElementChild.tagName&&(s+=this.include_peers.lastElementChild.childElementCount),s?(this.confirmBtn.setAttribute("disabled","true"),t=this.filter.id?f.default.filtersStorage.updateDialogFilter(this.filter):f.default.filtersStorage.createDialogFilter(this.filter),t.then(e=>{e&&this.closeBtn.click()}).catch(e=>{"DIALOG_FILTERS_TOO_MUCH"==e.type?h.toast("Sorry, you can't create more folders."):console.error("updateDialogFilter error:",e)}).finally(()=>{this.confirmBtn.removeAttribute("disabled")})):h.toast("Please choose at least one chat for this folder.")}),this.nameInput.addEventListener("input",()=>{this.nameInput.value.length>12?this.nameInput.value=this.nameInput.value.slice(0,12):(this.filter.title=this.nameInput.value,this.nameInput.classList.remove("error"),this.editCheckForChange())})}onOpen(){this.init?(this.init(),this.init=null):this.animation&&this.animation.restart()}onCloseAfterTimeout(){Array.from(this.container.querySelectorAll("ul, .show-more")).forEach(e=>e.remove())}onCreateOpen(){this.caption.style.display="",this.title.innerText="New Folder",this.menuBtn.classList.add("hide"),this.confirmBtn.classList.remove("hide"),this.nameInput.value="";for(const e in this.flags)this.flags[e].style.display="none"}onEditOpen(){this.caption.style.display="none",this.title.innerText="create"==this.type?"New Folder":"Edit Folder","edit"==this.type&&(this.menuBtn.classList.remove("hide"),this.confirmBtn.classList.add("hide"));const e=this.filter;this.nameInput.value=e.title;for(const t in this.flags)this.flags[t].style.display=e.pFlags[t]?"":"none";["include_peers","exclude_peers"].forEach(t=>{const s=this[t],i=document.createElement("ul"),n=e[t].slice(),a=e=>{for(let t=0,s=Math.min(n.length,e);t<s;++t){const e=n.shift(),{dom:t}=c.default.addDialog(e,i,!1,!1,void 0,!0);t.lastMessageSpan.parentElement.remove()}n.length?o.innerHTML=`<div class="tgico-down"></div><div>Show ${Math.min(20,n.length)} more chat${n.length>1?"s":""}</div>`:o&&o.remove()};let o;s.append(i),n.length&&(o=document.createElement("div"),o.classList.add("show-more"),o.addEventListener("click",()=>a(20)),o.innerHTML=`<div class="tgico-down"></div><div>Show ${Math.min(20,n.length)} more chat${n.length>1?"s":""}</div>`,p.ripple(o),s.append(o)),a(4)})}editCheckForChange(){if("edit"==this.type){const e=!u.deepEqual(this.originalFilter,this.filter);this.confirmBtn.classList.toggle("hide",!e),this.menuBtn.classList.toggle("hide",e)}}setFilter(e,t){this.onCloseAfterTimeout(),t?(this.originalFilter=e,this.filter=u.copy(e)):(this.filter=e,this.onEditOpen(),this.editCheckForChange())}open(e){r.default.selectTab(r.AppSidebarLeft.SLIDERITEMSIDS.editFolder),void 0===e?(this.setFilter({_:"dialogFilter",flags:0,id:0,title:"",pFlags:{},pinned_peers:[],include_peers:[],exclude_peers:[]},!0),this.type="create",this.onCreateOpen()):(this.setFilter(e,!0),this.type="edit",this.onEditOpen())}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const r=s(51),d=a(s(14)),f=o(s(15)),l=o(s(8)),c=o(s(5)),u=s(0);t.default=class{constructor(){this.renderResults=e=>{const t="included"==this.type?this.filter.exclude_peers:this.filter.include_peers;e.forEach(e=>{if(t.includes(e))return;const{dom:s}=f.default.addDialog(e,this.selector.scrollable,!1,!1),i=this.selector.selected.has(e);s.containerEl.insertAdjacentHTML("beforeend",this.checkbox(i)),i&&s.listEl.classList.add("active");let n="";n=e>0?e==u.$rootScope.myID?"Chat with yourself":c.default.isBot(e)?"Bot":c.default.contactsList.has(e)?"Contact":"Non-Contact":l.default.isBroadcast(e)?"Channel":"Group",s.lastMessageSpan.innerHTML=n})},this.onSelectChange=e=>{"included"==this.type&&(this.confirmBtn.style.display=e?"":"none")}}init(){this.container=document.querySelector(".included-chats-container"),this.closeBtn=this.container.querySelector(".sidebar-close-button"),this.confirmBtn=this.container.querySelector(".btn-confirm"),this.title=this.container.querySelector(".sidebar-header__title"),this.confirmBtn.addEventListener("click",()=>{const e=this.selector.getSelected();if("included"==this.type)for(const e in this.filter.pFlags)0!==e.indexOf("exclude_")&&delete this.filter.pFlags[e];else for(const e in this.filter.pFlags)0===e.indexOf("exclude_")&&delete this.filter.pFlags[e];const t=[];for(const s of e)"number"==typeof s?t.push(s):this.filter.pFlags[s]=!0;this.filter["included"==this.type?"include_peers":"exclude_peers"]=t,d.default.editFolderTab.setFilter(this.filter,!1),this.closeBtn.click()})}checkbox(e){return`<div class="checkbox"><label><input type="checkbox" ${e?"checked":""}><span></span></label></div>`}onOpen(){this.init&&(this.init(),this.init=null),this.confirmBtn.style.display="excluded"==this.type?"":"none",this.title.innerText="included"==this.type?"Included Chats":"Excluded Chats";const e=this.filter,t=document.createDocumentFragment(),s=document.createElement("div");s.classList.add("sidebar-left-h2"),s.innerText="Chat types";const i=document.createElement("div");let n;i.classList.add("folder-categories"),n="excluded"==this.type?{exclude_muted:{ico:"tgico-mute",text:"Muted"},exclude_archived:{ico:"tgico-archive",text:"Archived"},exclude_read:{ico:"tgico-readchats",text:"Read"}}:{contacts:{ico:"tgico-newprivate",text:"Contacts"},non_contacts:{ico:"tgico-noncontacts",text:"Non-Contacts"},groups:{ico:"tgico-group",text:"Groups"},broadcasts:{ico:"tgico-newchannel",text:"Channels"},bots:{ico:"tgico-bots",text:"Bots"}};let a="";for(const e in n)a+=`<div class="folder-category-button ${n[e].ico}" data-peerID="${e}"><p>${n[e].text}</p>${this.checkbox()}</div>`;i.innerHTML=a;const o=document.createElement("hr");o.style.margin="7px 0 9px";const d=document.createElement("div");d.classList.add("sidebar-left-h2"),d.innerText="Chats",t.append(s,i,o,d);const f=("included"==this.type?e.include_peers:e.exclude_peers).slice();this.selector=new r.AppSelectPeers(this.container,this.onSelectChange,["dialogs"],null,this.renderResults),this.selector.selected=new Set(f),this.selector.input.placeholder="Search";const l=this.selector.add.bind(this.selector);this.selector.add=(e,t)=>{var s;const i=l(e,null===(s=n[e])||void 0===s?void 0:s.text);return n[e]&&i.querySelector("avatar-element").classList.add(n[e].ico),i},this.selector.list.parentElement.insertBefore(t,this.selector.list),f.forEach(e=>{this.selector.add(e)});for(const t in e.pFlags)n.hasOwnProperty(t)&&e.pFlags[t]&&i.querySelector(`[data-peerID="${t}"]`).click()}onCloseAfterTimeout(){this.selector&&(this.selector.container.remove(),this.selector=null)}open(e,t){this.originalFilter=e,this.filter=u.copy(this.originalFilter),this.type=t,d.default.selectTab(d.AppSidebarLeft.SLIDERITEMSIDS.includedChats)}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ChatInput=void 0;const n=i(s(6)),a=s(3),o=i(s(2)),r=i(s(55)),d=i(s(12)),f=s(0),l=s(20),c=i(s(7)),u=s(57),h=i(s(96)),p=i(s(54)),m=s(1),g=i(s(11)),b=i(s(46)),v=i(s(100));t.ChatInput=class{constructor(){this.pageEl=document.getElementById("page-chats"),this.messageInput=document.getElementById("input-message"),this.fileInput=document.getElementById("input-file"),this.inputMessageContainer=document.getElementsByClassName("input-message-container")[0],this.inputScroll=new n.default(this.inputMessageContainer),this.btnSend=document.getElementById("btn-send"),this.btnCancelRecord=this.btnSend.parentElement.previousElementSibling,this.lastUrl="",this.lastTimeType=0,this.inputContainer=this.btnSend.parentElement.parentElement,this.chatInput=this.inputContainer.parentElement,this.attachMenu={},this.attachMediaPopUp={},this.replyElements={},this.willSendWebPage=null,this.replyToMsgID=0,this.editMsgID=0,this.noWebPage=!1,this.recording=!1,this.recordCanceled=!1,this.recordTimeEl=this.inputContainer.querySelector(".record-time"),this.recordRippleEl=this.inputContainer.querySelector(".record-ripple"),this.recordStartTime=0,this.scrollTop=0,this.scrollOffsetTop=0,this.scrollDiff=0,this.attachMenu.container=document.getElementById("attach-file"),this.attachMenu.media=this.attachMenu.container.querySelector(".menu-media"),this.attachMenu.document=this.attachMenu.container.querySelector(".menu-document"),this.attachMenu.poll=this.attachMenu.container.querySelector(".menu-poll"),this.attachMediaPopUp.container=this.pageEl.querySelector(".popup-send-photo"),this.attachMediaPopUp.titleEl=this.attachMediaPopUp.container.querySelector(".popup-title"),this.attachMediaPopUp.sendBtn=this.attachMediaPopUp.container.querySelector(".btn-primary"),this.attachMediaPopUp.mediaContainer=this.attachMediaPopUp.container.querySelector(".popup-photo"),this.attachMediaPopUp.captionInput=this.attachMediaPopUp.container.querySelector("input"),this.replyElements.container=this.pageEl.querySelector(".reply-wrapper"),this.replyElements.cancelBtn=this.replyElements.container.querySelector(".reply-cancel"),this.replyElements.titleEl=this.replyElements.container.querySelector(".reply-title"),this.replyElements.subtitleEl=this.replyElements.container.querySelector(".reply-subtitle");try{this.recorder=new h.default({encoderSampleRate:48e3,monitorGain:0,numberOfChannels:1,recordingGain:1,reuseWorker:!0})}catch(e){this.btnSend.classList.remove("tgico-microphone2"),this.btnSend.classList.add("tgico-send"),console.error("Recorder constructor error:",e)}this.messageInput.addEventListener("keydown",e=>{if("Enter"==e.key&&!m.touchSupport){if(e.shiftKey||e.ctrlKey||e.metaKey)return;this.sendMessage()}}),m.touchSupport&&(this.messageInput.addEventListener("touchend",e=>{this.saveScroll(),b.default.toggle(!1)}),window.addEventListener("resize",()=>{this.restoreScroll()})),this.messageInput.addEventListener("input",e=>{let t=this.messageInput.innerText,s=a.RichTextProcessor.parseEntities(t).find(e=>"messageEntityUrl"==e._);if(s){let e=t.slice(s.offset,s.offset+s.length);this.lastUrl!=e&&(this.lastUrl=e,this.willSendWebPage=null,o.default.invokeApi("messages.getWebPage",{url:e,hash:0}).then(t=>{r.default.saveWebPage(t),this.lastUrl==e&&(this.setTopInfo(t.site_name||t.title,t.description||t.url),this.replyToMsgID=0,this.noWebPage=!1,this.willSendWebPage=t)}))}if(t.trim()||this.serializeNodes(Array.from(this.messageInput.childNodes)).trim()){if(!this.btnSend.classList.contains("tgico-send")||!this.recorder){this.recorder&&(this.btnSend.classList.add("tgico-send"),this.btnSend.classList.remove("tgico-microphone2"));let e=Date.now();e-this.lastTimeType>=6e3&&(this.lastTimeType=e,c.default.setTyping("sendMessageTypingAction"))}}else this.messageInput.innerHTML="",this.recorder&&(this.btnSend.classList.remove("tgico-send"),this.btnSend.classList.add("tgico-microphone2")),c.default.setTyping("sendMessageCancelAction")}),a.RichTextProcessor.emojiSupported||this.messageInput.addEventListener("copy",e=>{const t=document.getSelection();let s=t.getRangeAt(0),i=s.commonAncestorContainer,n="",a=Array.from(i.childNodes).slice(s.startOffset,s.endOffset);n=a.length?this.serializeNodes(a):t.toString(),event.clipboardData.setData("text/plain",n),event.preventDefault()}),this.messageInput.addEventListener("paste",e=>{e.preventDefault();let t=(e.originalEvent||e).clipboardData.getData("text/plain");t=a.RichTextProcessor.wrapEmojiText(t),window.document.execCommand("insertHTML",!1,t)});let e=e=>new Promise((t,i)=>{let n={};n.file=e;let a=document.createElement("div");switch(s.type){case"media":{let s=0===e.type.indexOf("video/");if(a.classList.add("popup-item-media"),s){let s=document.createElement("video"),i=document.createElement("source");i.src=n.objectURL=URL.createObjectURL(e),s.autoplay=!1,s.controls=!1,s.muted=!0,s.setAttribute("playsinline",""),s.onloadeddata=()=>{n.width=s.videoWidth,n.height=s.videoHeight,n.duration=Math.floor(s.duration),a.append(s),t(a)},s.append(i)}else{let s=new Image;s.src=n.objectURL=URL.createObjectURL(e),s.onload=()=>{n.width=s.naturalWidth,n.height=s.naturalHeight,a.append(s),t(a)}}break}case"document":{let s=l.wrapDocument({file:e,file_name:e.name||"",size:e.size,type:-1!==e.type.indexOf("image/")?"photo":"doc"},!1,!0);n.objectURL=URL.createObjectURL(e),a.append(s),t(a);break}}s.sendFileDetails.push(n)}),t=t=>{this.fileInput.value="";let i=this.attachMediaPopUp.container.firstElementChild;if(i.classList.remove("is-media","is-document","is-album"),this.attachMediaPopUp.captionInput.value="",this.attachMediaPopUp.mediaContainer.innerHTML="",this.attachMediaPopUp.mediaContainer.style.width=this.attachMediaPopUp.mediaContainer.style.height="",s.sendFileDetails=[],(t=t.filter(e=>"media"!=s.type||["image/","video/"].find(t=>0===e.type.indexOf(t)))).length)if("document"==s.type)this.attachMediaPopUp.titleEl.innerText="Send "+(t.length>1?t.length+" Files":"File"),i.classList.add("is-document");else{i.classList.add("is-media");let e=0,s=0;t.forEach(t=>{0===t.type.indexOf("image/")?++e:0===t.type.indexOf("video/")&&++s}),e&&s?this.attachMediaPopUp.titleEl.innerText="Send Album":e?this.attachMediaPopUp.titleEl.innerText="Send "+(e>1?e+" Photos":"Photo"):s&&(this.attachMediaPopUp.titleEl.innerText="Send "+(s>1?s+" Videos":"Video"))}Promise.all(t.map(e)).then(e=>{if("media"==s.type)if(s.sendFileDetails.length>1){i.classList.add("is-album");let t=new u.Layouter(s.sendFileDetails.map(e=>({w:e.width,h:e.height})),380,100,4).layout();for(let{geometry:s,sides:i}of t){let t=e.shift();t.style.width=s.width+"px",t.style.height=s.height+"px",t.style.top=s.y+"px",t.style.left=s.x+"px",i&u.RectPart.Right&&(this.attachMediaPopUp.mediaContainer.style.width=s.width+s.x+"px"),i&u.RectPart.Bottom&&(this.attachMediaPopUp.mediaContainer.style.height=s.height+s.y+"px"),this.attachMediaPopUp.mediaContainer.append(t)}}else{let t=s.sendFileDetails[0],i=e[0],{w:n,h:a}=f.calcImageInBox(t.width,t.height,380,320);i.style.width=n+"px",i.style.height=a+"px",this.attachMediaPopUp.mediaContainer.append(i)}else this.attachMediaPopUp.mediaContainer.append(...e);this.attachMediaPopUp.container.classList.add("active")})},s={sendFileDetails:[]};this.fileInput.addEventListener("change",e=>{let s=e.target.files;s.length&&t(Array.from(s))},!1),this.attachMenu.media.addEventListener("click",()=>{this.fileInput.setAttribute("accept","image/*, video/*"),s.type="media",this.fileInput.click()}),this.attachMenu.document.addEventListener("click",()=>{this.fileInput.removeAttribute("accept"),s.type="document",this.fileInput.click()}),this.attachMenu.poll.addEventListener("click",()=>{(new v.default).show()}),document.addEventListener("paste",e=>{if(d.default.peerID&&!this.attachMediaPopUp.container.classList.contains("active")){var i=(e.clipboardData||e.originalEvent.clipboardData).items;for(let n=0;n<i.length;++n)if("file"==i[n].kind){e.preventDefault(),e.cancelBubble=!0,e.stopPropagation();let a=i[n].getAsFile();if(!a)continue;s.type=0===a.type.indexOf("image/")?"media":"document",t([a])}}},!0),this.attachMediaPopUp.sendBtn.addEventListener("click",()=>{this.attachMediaPopUp.container.classList.remove("active");let e=this.attachMediaPopUp.captionInput.value;s.isMedia="media"==s.type;let t=d.default.peerID;if(s.sendFileDetails.length>1&&s.isMedia)c.default.sendAlbum(t,s.sendFileDetails.map(e=>e.file),Object.assign({caption:e,replyToMsgID:this.replyToMsgID},s));else{e&&s.sendFileDetails.length>1&&(c.default.sendText(t,e,{replyToMsgID:this.replyToMsgID}),e="",this.replyToMsgID=0);s.sendFileDetails.map(i=>{let n=c.default.sendFile(t,i.file,Object.assign({isMedia:i.file.type.includes("audio/")||s.isMedia,caption:e,replyToMsgID:this.replyToMsgID},i));return e="",this.replyToMsgID=0,n})}this.onMessageSent()});const i=e=>{f.cancelEvent(e),this.btnSend.classList.contains("tgico-send")||!this.recorder?this.recording?this.recorder.stop():this.sendMessage():this.recorder.start().then(()=>{this.recordCanceled=!1,this.btnSend.classList.add("tgico-send"),this.chatInput.classList.add("is-recording"),this.recording=!0,p.default.setKeepAlive(!0),this.recordStartTime=Date.now();const e=this.recorder.sourceNode,t=e.context.createAnalyser();e.connect(t),t.fftSize=32;const s=new Uint8Array(t.frequencyBinCount),i=255*s.length;let n=()=>{if(!this.recording)return;t.getByteFrequencyData(s);let e=0;s.forEach(t=>{e+=t});let a=Math.min(1,e/i+.36);this.recordRippleEl.style.transform=`scale(${a})`;let o=Date.now()-this.recordStartTime,r=o%1e3,d=(""+o/1e3).toHHMMSS()+","+("00"+Math.round(r/10)).slice(-2);this.recordTimeEl.innerText=d,window.requestAnimationFrame(n)};n()}).catch(e=>{console.error("Recorder start error:",e)})};if(this.btnSend.addEventListener("touchend",i),this.btnSend.addEventListener("click",i),this.recorder){const e=e=>{f.cancelEvent(e),this.recordCanceled=!0,this.recorder.stop(),p.default.setKeepAlive(!1)};this.btnCancelRecord.addEventListener("touchend",e),this.btnCancelRecord.addEventListener("click",e),this.recorder.onstop=()=>{this.recording=!1,this.chatInput.classList.remove("is-recording"),this.btnSend.classList.remove("tgico-send"),this.recordRippleEl.style.transform=""},this.recorder.ondataavailable=e=>{if(this.recordCanceled)return;const t=(Date.now()-this.recordStartTime)/1e3|0,s=new Blob([e],{type:"audio/ogg"});performance.now();p.default.decode(e,!0).then(e=>{p.default.setKeepAlive(!1);let i=d.default.peerID;c.default.sendFile(i,s,{isVoiceMessage:!0,isMedia:!0,duration:t,waveform:e.waveform,objectURL:e.url,replyToMsgID:this.replyToMsgID}),this.onMessageSent(!1,!0)})}}this.replyElements.cancelBtn.addEventListener("click",()=>{if(this.replyElements.container.classList.remove("active"),this.replyToMsgID=0,this.editMsgID)if(this.willSendWebPage){let e=c.default.getMessage(this.editMsgID);this.setTopInfo("Editing",e.message)}else this.editMsgID=0,this.messageInput.innerHTML="",this.recorder&&(this.btnSend.classList.remove("tgico-send"),this.btnSend.classList.add("tgico-microphone2"));this.noWebPage=!0,this.willSendWebPage=null})}serializeNodes(e){return e.reduce((e,t)=>"object"==typeof t&&t.textContent?e+t.textContent:t.innerText?e+t.innerText:"IMG"==t.tagName&&t.classList&&t.classList.contains("emoji")?e+t.getAttribute("alt"):e,"")}onMessageSent(e=!0,t){let s=c.default.getDialogByPeerID(d.default.peerID)[0];s&&s.top_message&&c.default.readHistory(d.default.peerID,s.top_message),e&&(this.lastUrl="",this.editMsgID=0,this.noWebPage=!1,this.willSendWebPage=null,this.messageInput.innerText="",this.recorder&&(this.btnSend.classList.remove("tgico-send"),this.btnSend.classList.add("tgico-microphone2"))),(t||e)&&(this.replyToMsgID=0,this.replyElements.container.classList.remove("active"))}sendMessage(){let e=f.getRichValue(this.messageInput);this.editMsgID?c.default.editMessage(this.editMsgID,e,{noWebPage:this.noWebPage}):c.default.sendText(d.default.peerID,e,{replyToMsgID:0==this.replyToMsgID?void 0:this.replyToMsgID,noWebPage:this.noWebPage,webPage:this.willSendWebPage}),this.onMessageSent()}sendMessageWithDocument(e){return"documentEmpty"!=(e=g.default.getDoc(e))._&&(c.default.sendFile(d.default.peerID,e,{isMedia:!0,replyToMsgID:this.replyToMsgID}),this.onMessageSent(!1,!0),"sticker"==e.type&&b.default.stickersTab.pushRecentSticker(e),!0)}setTopInfo(e,t,s,i){"DIV"==this.replyElements.container.lastElementChild.tagName&&(this.replyElements.container.lastElementChild.remove(),this.replyElements.container.append(l.wrapReply(e,t,i))),this.replyElements.container.classList.add("active"),void 0!==s&&(this.messageInput.innerHTML=s?a.RichTextProcessor.wrapRichText(s):"",this.btnSend.classList.remove("tgico-microphone2"),this.btnSend.classList.add("tgico-send"))}saveScroll(){this.scrollTop=d.default.scrollable.container.scrollTop,this.scrollOffsetTop=this.chatInput.offsetTop}restoreScroll(){if(this.chatInput.style.display)return;let e=this.chatInput.offsetTop,t=d.default.scrollable.container,s=t.scrollTop,i=t.clientHeight,n=t.scrollHeight;if(e<this.scrollOffsetTop)this.scrollDiff=this.scrollOffsetTop-e,t.scrollTop+=this.scrollDiff;else if(s!=this.scrollTop){n-(s+i)<this.scrollDiff||(t.scrollTop-=this.scrollDiff)}}}},function(e,t,s){"undefined"!=typeof self&&self,e.exports=function(e){var t={};function s(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,s),n.l=!0,n.exports}return s.m=e,s.c=t,s.d=function(e,t,i){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(e,t){if(1&t&&(e=s(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(s.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)s.d(i,n,function(t){return e[t]}.bind(null,n));return i},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="",s(s.s=0)}([function(e,t,s){"use strict";(function(t){var s=t.AudioContext||t.webkitAudioContext,i=function(e){if(!i.isRecordingSupported())throw new Error("Recording is not supported in this browser");e||(e={}),this.state="inactive",this.config=Object.assign({bufferLength:4096,encoderApplication:2049,encoderFrameSize:20,encoderPath:"encoderWorker.min.js",encoderSampleRate:48e3,maxFramesPerPage:40,mediaTrackConstraints:!0,monitorGain:0,numberOfChannels:1,recordingGain:1,resampleQuality:3,streamPages:!1,reuseWorker:!1,wavBitDepth:16},e),this.encodedSamplePosition=0};i.isRecordingSupported=function(){return s&&t.navigator&&t.navigator.mediaDevices&&t.navigator.mediaDevices.getUserMedia&&t.WebAssembly},i.prototype.clearStream=function(){this.stream&&(this.stream.getTracks?this.stream.getTracks().forEach((function(e){e.stop()})):this.stream.stop(),delete this.stream),this.audioContext&&this.closeAudioContext&&(this.audioContext.close(),delete this.audioContext)},i.prototype.encodeBuffers=function(e){if("recording"===this.state){for(var t=[],s=0;s<e.numberOfChannels;s++)t[s]=e.getChannelData(s);this.encoder.postMessage({command:"encode",buffers:t})}},i.prototype.initAudioContext=function(e){return e&&e.context?(this.audioContext=e.context,this.closeAudioContext=!1):(this.audioContext=new s,this.closeAudioContext=!0),this.audioContext},i.prototype.initAudioGraph=function(){this.encodeBuffers=function(){delete this.encodeBuffers},this.scriptProcessorNode=this.audioContext.createScriptProcessor(this.config.bufferLength,this.config.numberOfChannels,this.config.numberOfChannels),this.scriptProcessorNode.connect(this.audioContext.destination),this.scriptProcessorNode.onaudioprocess=e=>{this.encodeBuffers(e.inputBuffer)},this.monitorGainNode=this.audioContext.createGain(),this.setMonitorGain(this.config.monitorGain),this.monitorGainNode.connect(this.audioContext.destination),this.recordingGainNode=this.audioContext.createGain(),this.setRecordingGain(this.config.recordingGain),this.recordingGainNode.connect(this.scriptProcessorNode)},i.prototype.initSourceNode=function(e){return e&&e.context?t.Promise.resolve(e):t.navigator.mediaDevices.getUserMedia({audio:this.config.mediaTrackConstraints}).then(e=>(this.stream=e,this.audioContext.createMediaStreamSource(e)))},i.prototype.loadWorker=function(){this.encoder||(this.encoder=new t.Worker(this.config.encoderPath))},i.prototype.initWorker=function(){var e=(this.config.streamPages?this.streamPage:this.storePage).bind(this);return this.recordedPages=[],this.totalLength=0,this.loadWorker(),new Promise((t,s)=>{var i=s=>{switch(s.data.message){case"ready":t();break;case"page":this.encodedSamplePosition=s.data.samplePosition,e(s.data.page);break;case"done":this.encoder.removeEventListener("message",i),this.finish()}};this.encoder.addEventListener("message",i),this.encoder.postMessage(Object.assign({command:"init",originalSampleRate:this.audioContext.sampleRate,wavSampleRate:this.audioContext.sampleRate},this.config))})},i.prototype.pause=function(e){if("recording"===this.state){if(this.state="paused",e&&this.config.streamPages){var t=this.encoder;return new Promise((e,s)=>{var i=s=>{"flushed"===s.data.message&&(t.removeEventListener("message",i),this.onpause(),e())};t.addEventListener("message",i),t.postMessage({command:"flush"})})}return this.onpause(),Promise.resolve()}},i.prototype.resume=function(){"paused"===this.state&&(this.state="recording",this.onresume())},i.prototype.setRecordingGain=function(e){this.config.recordingGain=e,this.recordingGainNode&&this.audioContext&&this.recordingGainNode.gain.setTargetAtTime(e,this.audioContext.currentTime,.01)},i.prototype.setMonitorGain=function(e){this.config.monitorGain=e,this.monitorGainNode&&this.audioContext&&this.monitorGainNode.gain.setTargetAtTime(e,this.audioContext.currentTime,.01)},i.prototype.start=function(e){if("inactive"===this.state)return this.initAudioContext(e),this.initAudioGraph(),this.encodedSamplePosition=0,this.initWorker().then(()=>this.initSourceNode(e)).then(e=>{this.sourceNode=e,this.state="recording",this.onstart(),this.encoder.postMessage({command:"getHeaderPages"}),this.sourceNode.connect(this.monitorGainNode),this.sourceNode.connect(this.recordingGainNode)})},i.prototype.stop=function(){if("inactive"!==this.state){this.state="inactive",this.monitorGainNode.disconnect(),this.scriptProcessorNode.disconnect(),this.recordingGainNode.disconnect(),this.sourceNode.disconnect(),this.clearStream();var e=this.encoder;return new Promise(t=>{var s=i=>{"done"===i.data.message&&(e.removeEventListener("message",s),t())};e.addEventListener("message",s),e.postMessage({command:"done"}),this.config.reuseWorker||e.postMessage({command:"close"})})}return Promise.resolve()},i.prototype.destroyWorker=function(){"inactive"===this.state&&this.encoder&&(this.encoder.postMessage({command:"close"}),delete this.encoder)},i.prototype.storePage=function(e){this.recordedPages.push(e),this.totalLength+=e.length},i.prototype.streamPage=function(e){this.ondataavailable(e)},i.prototype.finish=function(){if(!this.config.streamPages){var e=new Uint8Array(this.totalLength);this.recordedPages.reduce((function(t,s){return e.set(s,t),t+s.length}),0),this.ondataavailable(e)}this.onstop(),this.config.reuseWorker||delete this.encoder},i.prototype.ondataavailable=function(){},i.prototype.onpause=function(){},i.prototype.onresume=function(){},i.prototype.onstart=function(){},i.prototype.onstop=function(){},e.exports=i}).call(this,s(1))},function(e,t){var s;s=function(){return this}();try{s=s||new Function("return this")()}catch(e){"object"==typeof window&&(s=window)}e.exports=s}])},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(46),a=i(s(63)),o=i(s(6)),r=s(4),d=i(s(2)),f=i(s(11));t.default=class{init(){this.content=document.getElementById("content-gifs");const e=this.content.firstElementChild;e.addEventListener("click",n.EmoticonsDropdown.onMediaClick);const t=new a.default(e),s=(new o.default(this.content,"y","GIFS",null),r.putPreloader(this.content,!0));d.default.invokeApi("messages.getSavedGifs",{hash:0}).then(e=>{let i=e;s.remove(),i.gifs.forEach((e,s)=>{i.gifs[s]=f.default.saveDoc(e),t.add(i.gifs[s],n.EMOTICONSSTICKERGROUP,n.EmoticonsDropdown.lazyLoadQueue)})}),this.init=null}onClose(){}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(46),a=i(s(6)),o=i(s(1)),r=s(4),d=i(s(40)),f=s(3),l=i(s(12));t.default=class{constructor(){this.recent=[],this.onContentClick=e=>{let t=e.target;if("SPAN"!=t.tagName||t.classList.contains("emoji")){if("DIV"==t.tagName)return}else t=t.firstElementChild;l.default.chatInputC.messageInput.innerHTML+=t.outerHTML;const s=this.getEmojiFromElement(t);Array.from(this.recentItemsDiv.children).forEach((e,t)=>{const i=this.getEmojiFromElement(e);s==i&&e.remove()});this.recentItemsDiv.scrollHeight;this.appendEmoji(s,this.recentItemsDiv,!0),this.recent.findAndSplice(e=>e==s),this.recent.unshift(s),this.recent.length>36&&(this.recent.length=36),d.default.pushToState("recentEmoji",this.recent);const i=new Event("input",{bubbles:!0,cancelable:!0});l.default.chatInputC.messageInput.dispatchEvent(i)}}init(){this.content=document.getElementById("content-emoji");const e=["Smileys & Emotion","Animals & Nature","Food & Drink","Travel & Places","Activities","Objects","Flags","Skin Tones"],t={},s={Recent:[]};for(const t in o.default.Emoji){const i=""+o.default.Emoji[t],n=e[+i[0]-1];n&&(s[n]||(s[n]=[]),s[n][+i.slice(1)||0]=t)}e.pop(),delete s["Skin Tones"];for(const e in s){const i=document.createElement("div");i.classList.add("emoji-category");const n=document.createElement("div");n.classList.add("category-title"),n.innerText=e;const a=document.createElement("div");a.classList.add("category-items"),i.append(n,a);s[e].forEach(e=>{e=e.split("-").reduce((e,t)=>e+String.fromCodePoint(parseInt(t,16)),""),this.appendEmoji(e,a,!1)}),t[e]=i}const i=this.content.previousElementSibling.firstElementChild,f=this.scroll=new a.default(this.content,"y","EMOJI",null),l=r.putPreloader(this.content,!0);Promise.all([new Promise(e=>setTimeout(e,200)),d.default.getState().then(e=>{Array.isArray(e.recentEmoji)&&(this.recent=e.recentEmoji)})]).then(()=>{l.remove(),this.recentItemsDiv=t.Recent.querySelector(".category-items");for(const e of this.recent)this.appendEmoji(e,this.recentItemsDiv);e.unshift("Recent"),e.map(e=>{const s=t[e];return s||console.error("no div by category:",e),f.append(s),this.stickyIntersector.observeStickyHeaderChanges(s),s})}),this.content.addEventListener("click",this.onContentClick),this.stickyIntersector=n.EmoticonsDropdown.menuOnClick(i,f),this.init=null}appendEmoji(e,t,s=!1){const i=document.createElement("span");let n;n=f.RichTextProcessor.wrapEmojiText(e),i.innerHTML=n,i.firstElementChild&&i.firstElementChild.setAttribute("loading","lazy"),s?t.prepend(i):t.appendChild(i)}getEmojiFromElement(e){return"SPAN"!=e.tagName||e.classList.contains("emoji")||(e=e.firstElementChild),e.getAttribute("alt")||e.innerText}onClose(){}}},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=a(s(46)),f=r(s(6)),l=s(20),c=r(s(43)),u=r(s(28)),h=s(59),p=r(s(17)),m=s(4),g=s(3),b=s(0),v=r(s(2)),y=r(s(11)),w=r(s(18));t.default=class{constructor(){this.stickerSets={},this.recentStickers=[],this.mounted=!1,this.queueCategoryPush=[],this.animatedDivs=new Set}categoryPush(e,t,s,i){const n=document.createElement("div");n.classList.add("category-items");const a=document.createElement("div");a.classList.add("category-title"),a.innerHTML=t,e.append(a,n),this.stickyIntersector.observeStickyHeaderChanges(e),this.queueCategoryPush.push({element:e,prepend:i}),s.then(e=>{e.forEach(e=>{n.append(this.renderSticker(e))}),this.queueCategoryPush.length&&(this.queueCategoryPush.forEach(({element:e,prepend:t})=>{t?this.recentDiv.parentElement?(this.scroll.prepend(e),this.scroll.prepend(this.recentDiv)):this.scroll.prepend(e):this.scroll.append(e)}),this.queueCategoryPush.length=0)})}renderSticker(e,t){return t||(t=document.createElement("div"),2==e.sticker&&(this.animatedDivs.add(t),this.animatedIntersector.observe(t))),l.wrapSticker({doc:e,div:t,lazyLoadQueue:d.EmoticonsDropdown.lazyLoadQueue,group:d.EMOTICONSSTICKERGROUP,onlyThumb:2==e.sticker}),t}renderStickerSet(e,t=!1){return o(this,void 0,void 0,(function*(){const s=document.createElement("div");s.classList.add("sticker-category");const i=document.createElement("li");i.classList.add("btn-icon"),this.stickerSets[e.id]={stickers:s,tab:i},t?this.menu.insertBefore(i,this.menu.firstElementChild.nextSibling):this.menu.append(i);const n=c.default.getStickerSet(e);this.categoryPush(s,g.RichTextProcessor.wrapEmojiText(e.title),n.then(e=>e.documents),t);const a=yield n;if(a.set.thumb){const e=c.default.getStickerSetThumbDownloadOptions(a.set),t=u.default.download(e);if(a.set.pFlags.animated)t.then(h.readBlobAsText).then(JSON.parse).then(e=>{p.default.loadAnimationWorker({container:i,loop:!0,autoplay:!1,animationData:e,width:32,height:32},d.EMOTICONSSTICKERGROUP)});else{const e=new Image;t.then(t=>{m.renderImageFromUrl(e,URL.createObjectURL(t),()=>{i.append(e)})})}}else l.wrapSticker({doc:a.documents[0],div:i,group:d.EMOTICONSSTICKERGROUP})}))}init(){this.content=document.getElementById("content-stickers"),this.recentDiv=document.createElement("div"),this.recentDiv.classList.add("sticker-category");let e=this.content.previousElementSibling;this.menu=e.firstElementChild.firstElementChild;let t=new f.default(e,"x"),s=document.createElement("div");s.classList.add("stickers-categories"),this.content.append(s),b.$rootScope.$on("stickers_installed",e=>{const t=e.detail;!this.stickerSets[t.id]&&this.mounted&&this.renderStickerSet(t,!0)}),b.$rootScope.$on("stickers_deleted",e=>{const t=e.detail;if(this.stickerSets[t.id]&&this.mounted){const e=this.stickerSets[t.id];e.stickers.remove(),e.tab.remove(),delete this.stickerSets[t.id]}}),s.addEventListener("click",d.EmoticonsDropdown.onMediaClick),this.scroll=new f.default(this.content,"y","STICKERS",void 0,void 0,2),this.scroll.setVirtualContainer(s),this.stickyIntersector=d.EmoticonsDropdown.menuOnClick(this.menu,this.scroll,t);const i=m.putPreloader(this.content,!0);Promise.all([c.default.getRecentStickers().then(e=>{this.recentStickers=e.stickers.slice(0,20),this.stickerSets.recent={stickers:this.recentDiv,tab:this.menu.firstElementChild},i.remove(),this.categoryPush(this.recentDiv,"Recent",Promise.resolve(this.recentStickers),!0)}),v.default.invokeApi("messages.getAllStickers",{hash:0}).then(e=>o(this,void 0,void 0,(function*(){let t=e;i.remove();for(let e of t.sets)this.renderStickerSet(e)})))]).finally(()=>{this.mounted=!0});const n=e=>{w.default.getAnimations(e).forEach(t=>{u.has(e)?w.default.checkAnimation(t,!1):w.default.checkAnimation(t,!0,!0)})},a=e=>{u.delete(e);const t=e.dataset.docID,s=y.default.getDoc(t);n(e),e.innerHTML="",this.renderSticker(s,e)};let r=!1;const u=new Set;this.animatedIntersector=new IntersectionObserver(e=>{r||e.forEach(e=>{const{target:t,isIntersecting:s}=e,i=t,o=i.dataset.docID,r=y.default.getDoc(o);if(s){if(u.has(i))return;u.add(i),l.wrapSticker({doc:r,div:i,width:80,height:80,lazyLoadQueue:null,group:d.EMOTICONSSTICKERGROUP,onlyThumb:!1,play:!0,loop:!0}).then(()=>{n(i)})}else a(i)})}),d.default.events.onClose.push(()=>{r=!0}),d.default.events.onCloseAfter.push(()=>{const e=[...u];for(const t of e)a(t)}),d.default.events.onOpenAfter.push(()=>{r=!1,this.animatedIntersector.disconnect();const e=[...this.animatedDivs];for(const t of e)this.animatedIntersector.observe(t)}),this.init=null}pushRecentSticker(e){if(!this.recentDiv.parentElement)return;let t=this.recentDiv.querySelector(`[data-doc-i-d="${e.id}"]`);t||(t=this.renderSticker(e));const s=this.recentDiv.querySelector(".category-items");s.prepend(t),s.childElementCount>20&&Array.from(s.children).slice(20).forEach(e=>e.remove())}onClose(){}}},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=s(36),a=i(s(6)),o=i(s(7)),r=s(0),d=s(44),f=(e,t,s)=>{const i=document.createElement("div");return i.classList.add("input-field"),i.innerHTML=`\n <input type="text" name="${s}" id="input-${s}" placeholder="${e}" autocomplete="off" required="">\n <label for="input-${s}">${t}</label>\n `,i};class l extends n.PopupElement{constructor(){super("popup-create-poll popup-new-media",null,{closable:!0,withConfirm:"CREATE",body:!0}),this.tempID=0,this.onSubmitClick=e=>{const t=this.questionInput.value;if(!t.trim())return void d.toast("Please enter a question");const s=Array.from(this.questions.children).map((e,t)=>e.firstElementChild.value).filter(e=>!!e.trim());if(s.length<2)return void d.toast("Please enter at least two options");this.closeBtn.click(),this.confirmBtn.removeEventListener("click",this.onSubmitClick);const i={_:"poll",flags:0};i.question=t,i.answers=s.map((e,t)=>({_:"pollAnswer",text:e,option:new Uint8Array([t])})),o.default.sendOther(r.$rootScope.selectedPeerID,{_:"inputMediaPoll",flags:0,poll:i})},this.onInput=e=>{const t=e.target;t.value.length&&t.parentElement.classList.add("is-filled");!t.parentElement.nextElementSibling&&t.value.length&&this.questions.childElementCount<10&&this.appendMoreField()},this.onDeleteClick=e=>{e.target.parentElement.remove(),Array.from(this.questions.children).forEach((e,t)=>{e.firstElementChild.nextElementSibling.innerText="Option "+(t+1)})},this.title.innerText="New Poll";const e=f("Ask a Question","Ask a Question","question");this.questionInput=e.firstElementChild,this.header.append(e);const t=document.createElement("hr"),s=document.createElement("div");s.classList.add("caption"),s.innerText="Options",this.questions=document.createElement("div"),this.questions.classList.add("poll-create-questions"),this.body.parentElement.insertBefore(t,this.body),this.body.append(s,this.questions),this.confirmBtn.addEventListener("click",this.onSubmitClick),this.scrollable=new a.default(this.body,"y",void 0),this.appendMoreField()}appendMoreField(){const e=this.questions.childElementCount+1,t=f("Add an Option","Option "+e,"question-"+this.tempID++);t.firstElementChild.addEventListener("input",this.onInput);const s=document.createElement("span");s.classList.add("btn-icon","tgico-close"),t.append(s),s.addEventListener("click",this.onDeleteClick,{once:!0}),this.questions.append(t),this.scrollable.scrollTo(this.scrollable.scrollHeight,!0,!0)}}t.default=l},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=s(0);t.default=class{constructor(){this.bubblesByGroups=[],this.groups=[],this.newGroupDiff=120}removeBubble(e,t){let s=this.bubblesByGroups.findAndSplice(e=>e.mid==t);s&&s.group.length&&(s.group.findAndSplice(t=>t==e),s.group.length?this.updateGroup(s.group):this.groups.findAndSplice(e=>e==s.group))}addBubble(e,t,s){let n,a=t.date,o=t.fromID;if(o==i.$rootScope.myID&&i.$rootScope.selectedPeerID==i.$rootScope.myID&&t.fwdFromID==o&&(o=-o),this.bubblesByGroups.length)if(s){let t=this.bubblesByGroups[0];t.fromID==o&&t.timestamp-a<this.newGroupDiff?(n=t.group,n.unshift(e)):this.groups.unshift(n=[e])}else{let t=this.bubblesByGroups[this.bubblesByGroups.length-1];t.fromID==o&&a-t.timestamp<this.newGroupDiff?(n=t.group,n.push(e)):this.groups.push(n=[e])}else this.groups.push(n=[e]);this.bubblesByGroups[s?"unshift":"push"]({timestamp:a,fromID:o,mid:t.mid,group:n}),this.updateGroup(n)}setClipIfNeeded(e,t=!1){if(e.classList.contains("is-message-empty")&&(e.classList.contains("photo")||e.classList.contains("video"))){let s=e.querySelector(".bubble__media-container");if(!s)return;Array.from(s.children).forEach(n=>{if(!(n instanceof SVGDefsElement))if(t)n.removeAttributeNS(null,"clip-path");else{let t,a,o=s.dataset.clipID,r=s.firstElementChild.firstElementChild.lastElementChild,d=+n.getAttributeNS(null,"width"),f=+n.getAttributeNS(null,"height"),l=e.classList.contains("is-out"),c=e.classList.contains("is-reply"),u="";e.classList.contains("forwarded")||c?t=a=0:l?(t=e.classList.contains("is-group-first")?12:6,a=12):(t=12,a=e.classList.contains("is-group-first")?12:6),u=l?i.generatePathData(0,0,d-9,f,a,t,0,12):i.generatePathData(9,0,d-9,f,a,t,12,0),r.setAttributeNS(null,"d",u),n.setAttributeNS(null,"clip-path","url(#"+o+")")}})}}updateGroup(e){if(!e.length)return;let t=e[0];if(1==e.length)return t.classList.add("is-group-first","is-group-last"),void this.setClipIfNeeded(t);t.classList.remove("is-group-last"),t.classList.add("is-group-first"),this.setClipIfNeeded(t,!0);let s=e.length-1;for(let t=1;t<s;++t){let s=e[t];s.classList.remove("is-group-last","is-group-first"),this.setClipIfNeeded(s,!0)}let i=e[e.length-1];i.classList.remove("is-group-first"),i.classList.add("is-group-last"),this.setClipIfNeeded(i)}updateGroupByMessageID(e){let t=this.bubblesByGroups.find(t=>t.mid==e);t&&this.updateGroup(t.group)}cleanup(){this.bubblesByGroups=[],this.groups=[]}}},function(e,t,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=s(36);class n extends i.PopupElement{constructor(e,t){super("popup-date-picker",[{text:"CANCEL",isCancel:!0},{text:"JUMP TO DATE",callback:()=>{this.onPick&&this.onPick(this.selectedDate.getTime()/1e3|0)}}]),this.onPick=t,this.minDate=new Date("2013-08-01T00:00:00"),this.onPrevClick=e=>{this.selectedMonth.setMonth(this.selectedMonth.getMonth()-1),this.setMonth(),this.selectedMonth.getTime()==this.minMonth.getTime()&&this.prevBtn.setAttribute("disabled","true"),this.nextBtn.removeAttribute("disabled")},this.onNextClick=e=>{this.selectedMonth.setMonth(this.selectedMonth.getMonth()+1),this.setMonth(),this.selectedMonth.getTime()==this.maxMonth.getTime()&&this.nextBtn.setAttribute("disabled","true"),this.prevBtn.removeAttribute("disabled")},this.onDateClick=e=>{const t=e.target;if(!t.dataset.timestamp)return;if(this.selectedEl){if(this.selectedEl==t)return;this.selectedEl.classList.remove("active")}t.classList.add("active");const s=+t.dataset.timestamp;this.selectedDate=new Date(s),this.setTitle(),this.setMonth()};const s=document.createElement("div");s.classList.add("popup-body"),this.controlsDiv=document.createElement("div"),this.controlsDiv.classList.add("date-picker-controls"),this.prevBtn=document.createElement("button"),this.prevBtn.classList.add("btn-icon","tgico-down","date-picker-prev"),this.prevBtn.addEventListener("click",this.onPrevClick),this.nextBtn=document.createElement("button"),this.nextBtn.classList.add("btn-icon","tgico-down","date-picker-next"),this.nextBtn.addEventListener("click",this.onNextClick),this.monthTitle=document.createElement("div"),this.monthTitle.classList.add("date-picker-month-title"),this.controlsDiv.append(this.prevBtn,this.monthTitle,this.nextBtn),this.monthsContainer=document.createElement("div"),this.monthsContainer.classList.add("date-picker-months"),this.monthsContainer.addEventListener("click",this.onDateClick),s.append(this.controlsDiv,this.monthsContainer),this.container.append(s);const i=document.createElement("div");i.classList.add("popup-centerer"),i.append(this.container),this.element.append(i),e.setHours(0,0,0,0),this.selectedDate=e,this.maxDate=new Date,this.maxDate.setHours(0,0,0,0),this.selectedMonth=new Date(this.selectedDate),this.selectedMonth.setDate(1),this.maxMonth=new Date(this.maxDate),this.maxMonth.setDate(1),this.minMonth=new Date(this.minDate),this.minMonth.setDate(1),this.selectedMonth.getTime()==this.minMonth.getTime()&&this.prevBtn.setAttribute("disabled","true"),this.selectedMonth.getTime()==this.maxMonth.getTime()&&this.nextBtn.setAttribute("disabled","true"),this.setTitle(),this.setMonth()}setTitle(){const e=this.selectedDate.toString().split(" ",3);this.title.innerText=e[0]+", "+e[1]+" "+e[2]}setMonth(){this.monthTitle.innerText=["January","February","March","April","May","June","July","August","September","October","November","December"][this.selectedMonth.getMonth()]+" "+this.selectedMonth.getFullYear(),this.month&&this.month.remove(),this.month=document.createElement("div"),this.month.classList.add("date-picker-month");const e=["M","T","W","T","F","S","S"];this.month.append(...e.map(e=>{const t=document.createElement("span");return t.innerText=e,t}));const t=new Date(this.selectedMonth);let s=t.getDay()-1;-1==s&&(s=e.length-1);for(let e=0;e<s;++e){const e=document.createElement("span");this.month.append(e)}do{const e=t.getDate(),s=document.createElement("button");s.classList.add("btn-icon"),s.innerText=""+e,s.dataset.timestamp=""+t.getTime(),t>this.maxDate&&s.setAttribute("disabled","true"),t.getTime()==this.selectedDate.getTime()&&(this.selectedEl=s,s.classList.add("active")),this.month.append(s),t.setDate(e+1)}while(1!=t.getDate());this.container.classList.toggle("is-max-lines",this.month.childElementCount/7>6),this.monthsContainer.append(this.month)}}t.default=n},function(e,t,s){"use strict";var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.PasswordManager=void 0;const n=i(s(2));class a{getState(e={}){return n.default.invokeApi("account.getPassword",{},e).then(e=>e)}check(e,t,s={}){return n.default.computeSRP(e,t).then(e=>n.default.invokeApi("auth.checkPassword",{password:e},s))}requestRecovery(e={}){return n.default.invokeApi("auth.requestPasswordRecovery",{},e)}recover(e,t={}){return n.default.invokeApi("auth.recoverPassword",{code:e},t)}}t.PasswordManager=a;const o=new a;t.default=o},function(e,t,s){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,s,i){void 0===i&&(i=s),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,i){void 0===i&&(i=s),e[i]=t[s]}),n=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var s in e)Object.hasOwnProperty.call(e,s)&&i(t,e,s);return n(t,e),t},o=this&&this.__awaiter||function(e,t,s,i){return new(s||(s=Promise))((function(n,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(s(2)),f=r(s(25)),l=r(s(31)),c=r(s(65)),u=r(s(48)),h=s(30),p=s(21),m=r(s(34));let g;const b=new f.default("page-signQR",!0,()=>g,()=>{g||(g=o(void 0,void 0,void 0,(function*(){const e=b.pageEl.querySelector(".auth-image");b.pageEl.querySelector(".a-qr").addEventListener("click",()=>{u.default.mount(),i=!0});const t=(yield Promise.all([Promise.resolve().then(()=>a(s(105)))]))[0].default;let i=!1;document.addEventListener("user_auth",()=>{i=!0,g=null},{once:!0});let n,r={ignoreErrors:!0};return()=>o(void 0,void 0,void 0,(function*(){for(i=!1;!i;)try{let s=yield d.default.invokeApi("auth.exportLoginToken",{api_id:h.App.id,api_hash:h.App.hash,except_ids:[]},{ignoreErrors:!0});if("auth.loginTokenMigrateTo"==s._&&(r.dcID||(r.dcID=s.dc_id,d.default.setBaseDcID(s.dc_id)),s=yield d.default.invokeApi("auth.importLoginToken",{token:s.token},r)),"auth.loginTokenSuccess"==s._){let e=s.authorization;d.default.setUserAuth({id:e.user.id}),l.default.mount();break}if(!n||!p.bytesCmp(n,s.token)){n=s.token;let i="tg://login?token="+p.bytesToBase64(s.token).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=+$/,"");e.innerHTML="",new t({width:166,height:166,data:i,image:"assets/img/logo_padded.svg",dotsOptions:{color:"#000000",type:"rounded"},imageOptions:{imageSize:.75},backgroundOptions:{color:"#ffffff"},qrOptions:{errorCorrectionLevel:"L"}}).append(e)}let i=Date.now()/1e3,a=s.expires-i-m.default.serverTimeOffset;yield new Promise((e,t)=>setTimeout(e,a>5?5e3:1e3*a|0))}catch(e){switch(e.type){case"SESSION_PASSWORD_NEEDED":console.warn("pageSignQR: SESSION_PASSWORD_NEEDED"),e.handled=!0,c.default.mount(),i=!0,g=null;break;default:console.error("pageSignQR: default error:",e)}}}))}))),g.then(e=>{e()})});t.default=b},function(e,t,s){window,e.exports=function(e){var t={};function s(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,s),n.l=!0,n.exports}return s.m=e,s.c=t,s.d=function(e,t,i){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(e,t){if(1&t&&(e=s(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(s.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)s.d(i,n,function(t){return e[t]}.bind(null,n));return i},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="",s(s.s=1)}([function(e,t,s){var i,n,a=function(){var e=function(e,t){var s=e,i=n[t],o=null,p=0,m=null,b=[],v={},y=function(e,t){o=function(e){for(var t=new Array(e),s=0;s<e;s+=1){t[s]=new Array(e);for(var i=0;i<e;i+=1)t[s][i]=null}return t}(p=4*s+17),w(0,0),w(p-7,0),w(0,p-7),S(),_(),M(e,t),s>=7&&L(e),null==m&&(m=E(s,i,b)),D(m,t)},w=function(e,t){for(var s=-1;s<=7;s+=1)if(!(e+s<=-1||p<=e+s))for(var i=-1;i<=7;i+=1)t+i<=-1||p<=t+i||(o[e+s][t+i]=0<=s&&s<=6&&(0==i||6==i)||0<=i&&i<=6&&(0==s||6==s)||2<=s&&s<=4&&2<=i&&i<=4)},_=function(){for(var e=8;e<p-8;e+=1)null==o[e][6]&&(o[e][6]=e%2==0);for(var t=8;t<p-8;t+=1)null==o[6][t]&&(o[6][t]=t%2==0)},S=function(){for(var e=a.getPatternPosition(s),t=0;t<e.length;t+=1)for(var i=0;i<e.length;i+=1){var n=e[t],r=e[i];if(null==o[n][r])for(var d=-2;d<=2;d+=1)for(var f=-2;f<=2;f+=1)o[n+d][r+f]=-2==d||2==d||-2==f||2==f||0==d&&0==f}},L=function(e){for(var t=a.getBCHTypeNumber(s),i=0;i<18;i+=1){var n=!e&&1==(t>>i&1);o[Math.floor(i/3)][i%3+p-8-3]=n}for(i=0;i<18;i+=1)n=!e&&1==(t>>i&1),o[i%3+p-8-3][Math.floor(i/3)]=n},M=function(e,t){for(var s=i<<3|t,n=a.getBCHTypeInfo(s),r=0;r<15;r+=1){var d=!e&&1==(n>>r&1);r<6?o[r][8]=d:r<8?o[r+1][8]=d:o[p-15+r][8]=d}for(r=0;r<15;r+=1)d=!e&&1==(n>>r&1),r<8?o[8][p-r-1]=d:r<9?o[8][15-r-1+1]=d:o[8][15-r-1]=d;o[p-8][8]=!e},D=function(e,t){for(var s=-1,i=p-1,n=7,r=0,d=a.getMaskFunction(t),f=p-1;f>0;f-=2)for(6==f&&(f-=1);;){for(var l=0;l<2;l+=1)if(null==o[i][f-l]){var c=!1;r<e.length&&(c=1==(e[r]>>>n&1)),d(i,f-l)&&(c=!c),o[i][f-l]=c,-1==(n-=1)&&(r+=1,n=7)}if((i+=s)<0||p<=i){i-=s,s=-s;break}}},E=function(e,t,s){for(var i=d.getRSBlocks(e,t),n=f(),o=0;o<s.length;o+=1){var l=s[o];n.put(l.getMode(),4),n.put(l.getLength(),a.getLengthInBits(l.getMode(),e)),l.write(n)}var c=0;for(o=0;o<i.length;o+=1)c+=i[o].dataCount;if(n.getLengthInBits()>8*c)throw"code length overflow. ("+n.getLengthInBits()+">"+8*c+")";for(n.getLengthInBits()+4<=8*c&&n.put(0,4);n.getLengthInBits()%8!=0;)n.putBit(!1);for(;!(n.getLengthInBits()>=8*c||(n.put(236,8),n.getLengthInBits()>=8*c));)n.put(17,8);return function(e,t){for(var s=0,i=0,n=0,o=new Array(t.length),d=new Array(t.length),f=0;f<t.length;f+=1){var l=t[f].dataCount,c=t[f].totalCount-l;i=Math.max(i,l),n=Math.max(n,c),o[f]=new Array(l);for(var u=0;u<o[f].length;u+=1)o[f][u]=255&e.getBuffer()[u+s];s+=l;var h=a.getErrorCorrectPolynomial(c),p=r(o[f],h.getLength()-1).mod(h);for(d[f]=new Array(h.getLength()-1),u=0;u<d[f].length;u+=1){var m=u+p.getLength()-d[f].length;d[f][u]=m>=0?p.getAt(m):0}}var g=0;for(u=0;u<t.length;u+=1)g+=t[u].totalCount;var b=new Array(g),v=0;for(u=0;u<i;u+=1)for(f=0;f<t.length;f+=1)u<o[f].length&&(b[v]=o[f][u],v+=1);for(u=0;u<n;u+=1)for(f=0;f<t.length;f+=1)u<d[f].length&&(b[v]=d[f][u],v+=1);return b}(n,i)};v.addData=function(e,t){var s=null;switch(t=t||"Byte"){case"Numeric":s=l(e);break;case"Alphanumeric":s=c(e);break;case"Byte":s=u(e);break;case"Kanji":s=h(e);break;default:throw"mode:"+t}b.push(s),m=null},v.isDark=function(e,t){if(e<0||p<=e||t<0||p<=t)throw e+","+t;return o[e][t]},v.getModuleCount=function(){return p},v.make=function(){if(s<1){for(var e=1;e<40;e++){for(var t=d.getRSBlocks(e,i),n=f(),o=0;o<b.length;o++){var r=b[o];n.put(r.getMode(),4),n.put(r.getLength(),a.getLengthInBits(r.getMode(),e)),r.write(n)}var l=0;for(o=0;o<t.length;o++)l+=t[o].dataCount;if(n.getLengthInBits()<=8*l)break}s=e}y(!1,function(){for(var e=0,t=0,s=0;s<8;s+=1){y(!0,s);var i=a.getLostPoint(v);(0==s||e>i)&&(e=i,t=s)}return t}())},v.createTableTag=function(e,t){e=e||2;var s="";s+='<table style="',s+=" border-width: 0px; border-style: none;",s+=" border-collapse: collapse;",s+=" padding: 0px; margin: "+(t=void 0===t?4*e:t)+"px;",s+='">',s+="<tbody>";for(var i=0;i<v.getModuleCount();i+=1){s+="<tr>";for(var n=0;n<v.getModuleCount();n+=1)s+='<td style="',s+=" border-width: 0px; border-style: none;",s+=" border-collapse: collapse;",s+=" padding: 0px; margin: 0px;",s+=" width: "+e+"px;",s+=" height: "+e+"px;",s+=" background-color: ",s+=v.isDark(i,n)?"#000000":"#ffffff",s+=";",s+='"/>';s+="</tr>"}return(s+="</tbody>")+"</table>"},v.createSvgTag=function(e,t,s,i){var n={};"object"==typeof arguments[0]&&(e=(n=arguments[0]).cellSize,t=n.margin,s=n.alt,i=n.title),e=e||2,t=void 0===t?4*e:t,(s="string"==typeof s?{text:s}:s||{}).text=s.text||null,s.id=s.text?s.id||"qrcode-description":null,(i="string"==typeof i?{text:i}:i||{}).text=i.text||null,i.id=i.text?i.id||"qrcode-title":null;var a,o,r,d,f=v.getModuleCount()*e+2*t,l="";for(d="l"+e+",0 0,"+e+" -"+e+",0 0,-"+e+"z ",l+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',l+=n.scalable?"":' width="'+f+'px" height="'+f+'px"',l+=' viewBox="0 0 '+f+" "+f+'" ',l+=' preserveAspectRatio="xMinYMin meet"',l+=i.text||s.text?' role="img" aria-labelledby="'+I([i.id,s.id].join(" ").trim())+'"':"",l+=">",l+=i.text?'<title id="'+I(i.id)+'">'+I(i.text)+"</title>":"",l+=s.text?'<description id="'+I(s.id)+'">'+I(s.text)+"</description>":"",l+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',l+='<path d="',o=0;o<v.getModuleCount();o+=1)for(r=o*e+t,a=0;a<v.getModuleCount();a+=1)v.isDark(o,a)&&(l+="M"+(a*e+t)+","+r+d);return(l+='" stroke="transparent" fill="black"/>')+"</svg>"},v.createDataURL=function(e,t){e=e||2,t=void 0===t?4*e:t;var s=v.getModuleCount()*e+2*t,i=t,n=s-t;return g(s,s,(function(t,s){if(i<=t&&t<n&&i<=s&&s<n){var a=Math.floor((t-i)/e),o=Math.floor((s-i)/e);return v.isDark(o,a)?0:1}return 1}))},v.createImgTag=function(e,t,s){e=e||2,t=void 0===t?4*e:t;var i=v.getModuleCount()*e+2*t,n="";return n+="<img",n+=' src="',n+=v.createDataURL(e,t),n+='"',n+=' width="',n+=i,n+='"',n+=' height="',n+=i,n+='"',s&&(n+=' alt="',n+=I(s),n+='"'),n+"/>"};var I=function(e){for(var t="",s=0;s<e.length;s+=1){var i=e.charAt(s);switch(i){case"<":t+="&lt;";break;case">":t+="&gt;";break;case"&":t+="&amp;";break;case'"':t+="&quot;";break;default:t+=i}}return t};return v.createASCII=function(e,t){if((e=e||1)<2)return function(e){e=void 0===e?2:e;var t,s,i,n,a,o=1*v.getModuleCount()+2*e,r=e,d=o-e,f={"██":"█","█ ":"▀"," █":"▄"," ":" "},l={"██":"▀","█ ":"▀"," █":" "," ":" "},c="";for(t=0;t<o;t+=2){for(i=Math.floor((t-r)/1),n=Math.floor((t+1-r)/1),s=0;s<o;s+=1)a="█",r<=s&&s<d&&r<=t&&t<d&&v.isDark(i,Math.floor((s-r)/1))&&(a=" "),r<=s&&s<d&&r<=t+1&&t+1<d&&v.isDark(n,Math.floor((s-r)/1))?a+=" ":a+="█",c+=e<1&&t+1>=d?l[a]:f[a];c+="\n"}return o%2&&e>0?c.substring(0,c.length-o-1)+Array(o+1).join("▀"):c.substring(0,c.length-1)}(t);e-=1,t=void 0===t?2*e:t;var s,i,n,a,o=v.getModuleCount()*e+2*t,r=t,d=o-t,f=Array(e+1).join("██"),l=Array(e+1).join(" "),c="",u="";for(s=0;s<o;s+=1){for(n=Math.floor((s-r)/e),u="",i=0;i<o;i+=1)a=1,r<=i&&i<d&&r<=s&&s<d&&v.isDark(n,Math.floor((i-r)/e))&&(a=0),u+=a?f:l;for(n=0;n<e;n+=1)c+=u+"\n"}return c.substring(0,c.length-1)},v.renderTo2dContext=function(e,t){t=t||2;for(var s=v.getModuleCount(),i=0;i<s;i++)for(var n=0;n<s;n++)e.fillStyle=v.isDark(i,n)?"black":"white",e.fillRect(i*t,n*t,t,t)},v};e.stringToBytes=(e.stringToBytesFuncs={default:function(e){for(var t=[],s=0;s<e.length;s+=1){var i=e.charCodeAt(s);t.push(255&i)}return t}}).default,e.createStringToBytes=function(e,t){var s=function(){for(var s=m(e),i=function(){var e=s.read();if(-1==e)throw"eof";return e},n=0,a={};;){var o=s.read();if(-1==o)break;var r=i(),d=i()<<8|i();a[String.fromCharCode(o<<8|r)]=d,n+=1}if(n!=t)throw n+" != "+t;return a}(),i="?".charCodeAt(0);return function(e){for(var t=[],n=0;n<e.length;n+=1){var a=e.charCodeAt(n);if(a<128)t.push(a);else{var o=s[e.charAt(n)];"number"==typeof o?(255&o)==o?t.push(o):(t.push(o>>>8),t.push(255&o)):t.push(i)}}return t}};var t,s,i,n={L:1,M:0,Q:3,H:2},a=(t=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],i=function(e){for(var t=0;0!=e;)t+=1,e>>>=1;return t},(s={}).getBCHTypeInfo=function(e){for(var t=e<<10;i(t)-i(1335)>=0;)t^=1335<<i(t)-i(1335);return 21522^(e<<10|t)},s.getBCHTypeNumber=function(e){for(var t=e<<12;i(t)-i(7973)>=0;)t^=7973<<i(t)-i(7973);return e<<12|t},s.getPatternPosition=function(e){return t[e-1]},s.getMaskFunction=function(e){switch(e){case 0:return function(e,t){return(e+t)%2==0};case 1:return function(e,t){return e%2==0};case 2:return function(e,t){return t%3==0};case 3:return function(e,t){return(e+t)%3==0};case 4:return function(e,t){return(Math.floor(e/2)+Math.floor(t/3))%2==0};case 5:return function(e,t){return e*t%2+e*t%3==0};case 6:return function(e,t){return(e*t%2+e*t%3)%2==0};case 7:return function(e,t){return(e*t%3+(e+t)%2)%2==0};default:throw"bad maskPattern:"+e}},s.getErrorCorrectPolynomial=function(e){for(var t=r([1],0),s=0;s<e;s+=1)t=t.multiply(r([1,o.gexp(s)],0));return t},s.getLengthInBits=function(e,t){if(1<=t&&t<10)switch(e){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw"mode:"+e}else if(t<27)switch(e){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw"mode:"+e}else{if(!(t<41))throw"type:"+t;switch(e){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw"mode:"+e}}},s.getLostPoint=function(e){for(var t=e.getModuleCount(),s=0,i=0;i<t;i+=1)for(var n=0;n<t;n+=1){for(var a=0,o=e.isDark(i,n),r=-1;r<=1;r+=1)if(!(i+r<0||t<=i+r))for(var d=-1;d<=1;d+=1)n+d<0||t<=n+d||0==r&&0==d||o==e.isDark(i+r,n+d)&&(a+=1);a>5&&(s+=3+a-5)}for(i=0;i<t-1;i+=1)for(n=0;n<t-1;n+=1){var f=0;e.isDark(i,n)&&(f+=1),e.isDark(i+1,n)&&(f+=1),e.isDark(i,n+1)&&(f+=1),e.isDark(i+1,n+1)&&(f+=1),0!=f&&4!=f||(s+=3)}for(i=0;i<t;i+=1)for(n=0;n<t-6;n+=1)e.isDark(i,n)&&!e.isDark(i,n+1)&&e.isDark(i,n+2)&&e.isDark(i,n+3)&&e.isDark(i,n+4)&&!e.isDark(i,n+5)&&e.isDark(i,n+6)&&(s+=40);for(n=0;n<t;n+=1)for(i=0;i<t-6;i+=1)e.isDark(i,n)&&!e.isDark(i+1,n)&&e.isDark(i+2,n)&&e.isDark(i+3,n)&&e.isDark(i+4,n)&&!e.isDark(i+5,n)&&e.isDark(i+6,n)&&(s+=40);var l=0;for(n=0;n<t;n+=1)for(i=0;i<t;i+=1)e.isDark(i,n)&&(l+=1);return s+Math.abs(100*l/t/t-50)/5*10},s),o=function(){for(var e=new Array(256),t=new Array(256),s=0;s<8;s+=1)e[s]=1<<s;for(s=8;s<256;s+=1)e[s]=e[s-4]^e[s-5]^e[s-6]^e[s-8];for(s=0;s<255;s+=1)t[e[s]]=s;return{glog:function(e){if(e<1)throw"glog("+e+")";return t[e]},gexp:function(t){for(;t<0;)t+=255;for(;t>=256;)t-=255;return e[t]}}}();function r(e,t){if(void 0===e.length)throw e.length+"/"+t;var s=function(){for(var s=0;s<e.length&&0==e[s];)s+=1;for(var i=new Array(e.length-s+t),n=0;n<e.length-s;n+=1)i[n]=e[n+s];return i}(),i={getAt:function(e){return s[e]},getLength:function(){return s.length},multiply:function(e){for(var t=new Array(i.getLength()+e.getLength()-1),s=0;s<i.getLength();s+=1)for(var n=0;n<e.getLength();n+=1)t[s+n]^=o.gexp(o.glog(i.getAt(s))+o.glog(e.getAt(n)));return r(t,0)},mod:function(e){if(i.getLength()-e.getLength()<0)return i;for(var t=o.glog(i.getAt(0))-o.glog(e.getAt(0)),s=new Array(i.getLength()),n=0;n<i.getLength();n+=1)s[n]=i.getAt(n);for(n=0;n<e.getLength();n+=1)s[n]^=o.gexp(o.glog(e.getAt(n))+t);return r(s,0).mod(e)}};return i}var d=function(){var e=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],t=function(e,t){var s={};return s.totalCount=e,s.dataCount=t,s},s={getRSBlocks:function(s,i){var a=function(t,s){switch(s){case n.L:return e[4*(t-1)+0];case n.M:return e[4*(t-1)+1];case n.Q:return e[4*(t-1)+2];case n.H:return e[4*(t-1)+3];default:return}}(s,i);if(void 0===a)throw"bad rs block @ typeNumber:"+s+"/errorCorrectionLevel:"+i;for(var o=a.length/3,r=[],d=0;d<o;d+=1)for(var f=a[3*d+0],l=a[3*d+1],c=a[3*d+2],u=0;u<f;u+=1)r.push(t(l,c));return r}};return s}(),f=function(){var e=[],t=0,s={getBuffer:function(){return e},getAt:function(t){var s=Math.floor(t/8);return 1==(e[s]>>>7-t%8&1)},put:function(e,t){for(var i=0;i<t;i+=1)s.putBit(1==(e>>>t-i-1&1))},getLengthInBits:function(){return t},putBit:function(s){var i=Math.floor(t/8);e.length<=i&&e.push(0),s&&(e[i]|=128>>>t%8),t+=1}};return s},l=function(e){var t=e,s={getMode:function(){return 1},getLength:function(e){return t.length},write:function(e){for(var s=t,n=0;n+2<s.length;)e.put(i(s.substring(n,n+3)),10),n+=3;n<s.length&&(s.length-n==1?e.put(i(s.substring(n,n+1)),4):s.length-n==2&&e.put(i(s.substring(n,n+2)),7))}},i=function(e){for(var t=0,s=0;s<e.length;s+=1)t=10*t+n(e.charAt(s));return t},n=function(e){if("0"<=e&&e<="9")return e.charCodeAt(0)-"0".charCodeAt(0);throw"illegal char :"+e};return s},c=function(e){var t=e,s={getMode:function(){return 2},getLength:function(e){return t.length},write:function(e){for(var s=t,n=0;n+1<s.length;)e.put(45*i(s.charAt(n))+i(s.charAt(n+1)),11),n+=2;n<s.length&&e.put(i(s.charAt(n)),6)}},i=function(e){if("0"<=e&&e<="9")return e.charCodeAt(0)-"0".charCodeAt(0);if("A"<=e&&e<="Z")return e.charCodeAt(0)-"A".charCodeAt(0)+10;switch(e){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+e}};return s},u=function(t){var s=e.stringToBytes(t);return{getMode:function(){return 4},getLength:function(e){return s.length},write:function(e){for(var t=0;t<s.length;t+=1)e.put(s[t],8)}}},h=function(t){var s=e.stringToBytesFuncs.SJIS;if(!s)throw"sjis not supported.";!function(e,t){var i=s("友");if(2!=i.length||38726!=(i[0]<<8|i[1]))throw"sjis not supported."}();var i=s(t);return{getMode:function(){return 8},getLength:function(e){return~~(i.length/2)},write:function(e){for(var t=i,s=0;s+1<t.length;){var n=(255&t[s])<<8|255&t[s+1];if(33088<=n&&n<=40956)n-=33088;else{if(!(57408<=n&&n<=60351))throw"illegal char at "+(s+1)+"/"+n;n-=49472}n=192*(n>>>8&255)+(255&n),e.put(n,13),s+=2}if(s<t.length)throw"illegal char at "+(s+1)}}},p=function(){var e=[],t={writeByte:function(t){e.push(255&t)},writeShort:function(e){t.writeByte(e),t.writeByte(e>>>8)},writeBytes:function(e,s,i){s=s||0,i=i||e.length;for(var n=0;n<i;n+=1)t.writeByte(e[n+s])},writeString:function(e){for(var s=0;s<e.length;s+=1)t.writeByte(e.charCodeAt(s))},toByteArray:function(){return e},toString:function(){var t="";t+="[";for(var s=0;s<e.length;s+=1)s>0&&(t+=","),t+=e[s];return t+"]"}};return t},m=function(e){var t=e,s=0,i=0,n=0,a={read:function(){for(;n<8;){if(s>=t.length){if(0==n)return-1;throw"unexpected end of file./"+n}var e=t.charAt(s);if(s+=1,"="==e)return n=0,-1;e.match(/^\s$/)||(i=i<<6|o(e.charCodeAt(0)),n+=6)}var a=i>>>n-8&255;return n-=8,a}},o=function(e){if(65<=e&&e<=90)return e-65;if(97<=e&&e<=122)return e-97+26;if(48<=e&&e<=57)return e-48+52;if(43==e)return 62;if(47==e)return 63;throw"c:"+e};return a},g=function(e,t,s){for(var i=function(e,t){var s=e,i=t,n=new Array(e*t),a={setPixel:function(e,t,i){n[t*s+e]=i},write:function(e){e.writeString("GIF87a"),e.writeShort(s),e.writeShort(i),e.writeByte(128),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(255),e.writeByte(255),e.writeByte(255),e.writeString(","),e.writeShort(0),e.writeShort(0),e.writeShort(s),e.writeShort(i),e.writeByte(0);var t=o(2);e.writeByte(2);for(var n=0;t.length-n>255;)e.writeByte(255),e.writeBytes(t,n,255),n+=255;e.writeByte(t.length-n),e.writeBytes(t,n,t.length-n),e.writeByte(0),e.writeString(";")}},o=function(e){for(var t=1<<e,s=1+(1<<e),i=e+1,a=r(),o=0;o<t;o+=1)a.add(String.fromCharCode(o));a.add(String.fromCharCode(t)),a.add(String.fromCharCode(s));var d=p(),f=function(e){var t=e,s=0,i=0;return{write:function(e,n){if(e>>>n!=0)throw"length over";for(;s+n>=8;)t.writeByte(255&(e<<s|i)),n-=8-s,e>>>=8-s,i=0,s=0;i|=e<<s,s+=n},flush:function(){s>0&&t.writeByte(i)}}}(d);f.write(t,i);var l=0,c=String.fromCharCode(n[l]);for(l+=1;l<n.length;){var u=String.fromCharCode(n[l]);l+=1,a.contains(c+u)?c+=u:(f.write(a.indexOf(c),i),a.size()<4095&&(a.size()==1<<i&&(i+=1),a.add(c+u)),c=u)}return f.write(a.indexOf(c),i),f.write(s,i),f.flush(),d.toByteArray()},r=function(){var e={},t=0,s={add:function(i){if(s.contains(i))throw"dup key:"+i;e[i]=t,t+=1},size:function(){return t},indexOf:function(t){return e[t]},contains:function(t){return void 0!==e[t]}};return s};return a}(e,t),n=0;n<t;n+=1)for(var a=0;a<e;a+=1)i.setPixel(a,n,s(a,n));var o=p();i.write(o);for(var r=function(){var e=0,t=0,s=0,i="",n={},a=function(e){i+=String.fromCharCode(o(63&e))},o=function(e){if(e<0);else{if(e<26)return 65+e;if(e<52)return e-26+97;if(e<62)return e-52+48;if(62==e)return 43;if(63==e)return 47}throw"n:"+e};return n.writeByte=function(i){for(e=e<<8|255&i,t+=8,s+=1;t>=6;)a(e>>>t-6),t-=6},n.flush=function(){if(t>0&&(a(e<<6-t),e=0,t=0),s%3!=0)for(var n=3-s%3,o=0;o<n;o+=1)i+="="},n.toString=function(){return i},n}(),d=o.toByteArray(),f=0;f<d.length;f+=1)r.writeByte(d[f]);return r.flush(),"data:image/gif;base64,"+r};return e}();a.stringToBytesFuncs["UTF-8"]=function(e){return function(e){for(var t=[],s=0;s<e.length;s++){var i=e.charCodeAt(s);i<128?t.push(i):i<2048?t.push(192|i>>6,128|63&i):i<55296||i>=57344?t.push(224|i>>12,128|i>>6&63,128|63&i):(s++,i=65536+((1023&i)<<10|1023&e.charCodeAt(s)),t.push(240|i>>18,128|i>>12&63,128|i>>6&63,128|63&i))}return t}(e)},void 0===(n="function"==typeof(i=function(){return a})?i.apply(t,[]):i)||(e.exports=n)},function(e,t,s){"use strict";s.r(t);var i={numeric:"Numeric",alphanumeric:"Alphanumeric",byte:"Byte",kanji:"Kanji"},n=function(){return(n=Object.assign||function(e){for(var t,s=1,i=arguments.length;s<i;s++)for(var n in t=arguments[s])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e}).apply(this,arguments)},a=function(){for(var e=0,t=0,s=arguments.length;t<s;t++)e+=arguments[t].length;var i=Array(e),n=0;for(t=0;t<s;t++)for(var a=arguments[t],o=0,r=a.length;o<r;o++,n++)i[n]=a[o];return i},o=function(e){return!!e&&"object"==typeof e&&!Array.isArray(e)};function r(e){for(var t=[],s=1;s<arguments.length;s++)t[s-1]=arguments[s];if(!t.length)return e;var i=t.shift();return void 0!==i&&o(e)&&o(i)?(e=n({},e),Object.keys(i).forEach((function(t){var s=e[t],n=i[t];Array.isArray(s)&&Array.isArray(n)?e[t]=s.concat(n):o(s)&&o(n)?e[t]=r(Object.assign({},s),n):e[t]=n})),r.apply(void 0,a([e],t))):e}for(var d={L:.07,M:.15,Q:.25,H:.3},f=function(){function e(e){var t=e.context,s=e.type;this._context=t,this._type=s}return e.prototype.draw=function(e,t,s,i){var n,a=this._context;switch(this._type){case"dots":n=this._drawDots;break;case"rounded":n=this._drawRounded;break;case"square":default:n=this._drawSquare}n({x:e,y:t,size:s,context:a,getNeighbor:i})},e.prototype._drawDots=function(e){var t=e.x,s=e.y,i=e.size,n=e.context;n.beginPath(),n.arc(t+i/2,s+i/2,i/2,0,2*Math.PI),n.fill()},e.prototype._drawSquare=function(e){var t=e.x,s=e.y,i=e.size;e.context.fillRect(t,s,i,i)},e.prototype._drawRounded=function(e){var t=e.x,s=e.y,i=e.size,n=e.context,a=e.getNeighbor;n.beginPath(),n.moveTo(t,s+i/2),a(-1,0)||a(0,-1)?(n.lineTo(t,s),n.lineTo(t+i/2,s)):n.arc(t+i/2,s+i/2,i/2,-Math.PI,-Math.PI/2),a(0,-1)||a(1,0)?(n.lineTo(t+i,s),n.lineTo(t+i,s+i/2)):n.arc(t+i/2,s+i/2,i/2,-Math.PI/2,0),a(1,0)||a(0,1)?(n.lineTo(t+i,s+i),n.lineTo(t+i/2,s+i)):n.arc(t+i/2,s+i/2,i/2,0,Math.PI/2),a(0,1)||a(-1,0)?(n.lineTo(t,s+i),n.lineTo(t,s+i/2)):n.arc(t+i/2,s+i/2,i/2,Math.PI/2,Math.PI),n.fill()},e}(),l=function(){function e(e){this._canvas=document.createElement("canvas"),this._canvas.width=e.width,this._canvas.height=e.height,this._options=e}return Object.defineProperty(e.prototype,"context",{get:function(){return this._canvas.getContext("2d")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"width",{get:function(){return this._canvas.width},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"height",{get:function(){return this._canvas.height},enumerable:!0,configurable:!0}),e.prototype.getCanvas=function(){return this._canvas},e.prototype.clear=function(){var e=this.context;e&&e.clearRect(0,0,this._canvas.width,this._canvas.height)},e.prototype.drawQR=function(e){return this.clear(),this.drawBackground(),this._qr=e,this._options.image?this.drawImageAndDots():(this.drawDots(),Promise.resolve())},e.prototype.drawBackground=function(){var e=this.context,t=this._options;e&&(e.fillStyle=t.backgroundOptions.color,e.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype.drawDots=function(e){var t=this;if(!this._qr)throw"QR code is not defined";var s=this.context;if(!s)throw"QR code is not defined";var i=this._options,n=this._qr.getModuleCount();if(n>i.width||n>i.height)throw"The canvas is too small.";for(var a=Math.min(i.width,i.height),o=Math.floor(a/n),r=Math.floor((i.width-n*o)/2),d=Math.floor((i.height-n*o)/2),l=new f({context:s,type:i.dotsOptions.type}),c=function(a){for(var f=function(f){return e&&!e(a,f)?"continue":u._qr.isDark(a,f)?(s.fillStyle=i.dotsOptions.color,void l.draw(r+a*o,d+f*o,o,(function(s,i){return!(a+s<0||f+i<0||a+s>=n||f+i>=n)&&!(e&&!e(a+s,f+i))&&!!t._qr&&t._qr.isDark(a+s,f+i)}))):"continue"},c=0;c<n;c++)f(c)},u=this,h=0;h<n;h++)c(h)},e.prototype.drawImageAndDots=function(){var e=this;return new Promise((function(t,s){if(!e._qr)return s("QR code is not defined");var i=e.context;if(!i)return s("QR code is not defined");var n=e._options,a=e._qr.getModuleCount(),o=Math.min(n.width,n.height),r=Math.floor(o/a),f=Math.floor((n.width-a*r)/2),l=Math.floor((n.height-a*r)/2),c=new Image,u=n.imageOptions.imageSize*d[n.qrOptions.errorCorrectionLevel];if(!n.image)return s("Image is not defined");e._image=c,c.onload=function(){var s=Math.floor(u*a*a),o=function(e){var t=e.originalHeight,s=e.originalWidth,i=e.maxHiddenDots,n=e.maxHiddenAxisDots,a=e.dotSize,o={x:0,y:0},r={x:0,y:0};if(t<=0||s<=0||i<=0||a<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};var d=t/s;return o.x=Math.floor(Math.sqrt(i/d)),o.x<=0&&(o.x=1),n&&n<o.x&&(o.x=n),o.x%2==0&&o.x--,r.x=o.x*a,o.y=1+2*Math.ceil((o.x*d-1)/2),r.y=Math.round(r.x*d),(o.y*o.x>i||n&&n<o.y)&&(n&&n<o.y?(o.y=n,o.y%2==0&&o.x--):o.y-=2,r.y=o.y*a,o.x=1+2*Math.ceil((o.y/d-1)/2),r.x=Math.round(r.y/d)),{height:r.y,width:r.x,hideYDots:o.y,hideXDots:o.x}}({originalWidth:c.width,originalHeight:c.height,maxHiddenDots:s,maxHiddenAxisDots:a-14,dotSize:r}),d=o.width,h=o.height,p=o.hideXDots,m=o.hideYDots;e.drawDots((function(e,t){return!n.imageOptions.hideBackgroundDots||e<(a-p)/2||e>=(a+p)/2||t<(a-m)/2||t>=(a+m)/2})),i.drawImage(c,f+(a*r-d)/2,l+(a*r-h)/2,d,h),t()},c.src=n.image}))},e}(),c={},u=0;u<=40;u++)c[u]=u;var h=c,p={L:"L",M:"M",Q:"Q",H:"H"},m={width:300,height:300,data:void 0,image:void 0,qrOptions:{typeNumber:h[0],mode:void 0,errorCorrectionLevel:p.Q},imageOptions:{hideBackgroundDots:!0,imageSize:.4},dotsOptions:{type:"square",color:"#000"},backgroundOptions:{color:"#fff"}},g=s(0),b=s.n(g),v=function(){function e(e){this._options=e?r(m,e):m,this.update()}return e._clearContainer=function(e){e&&(e.innerHTML="")},e.prototype.update=function(t){e._clearContainer(this._container),this._options=t?r(this._options,t):this._options,this._options.data&&(this._qr=b()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||function(e){switch(!0){case/^[0-9]*$/.test(e):return i.numeric;case/^[0-9A-Z $%*+\-.\/:]*$/.test(e):return i.alphanumeric;default:return i.byte}}(this._options.data)),this._qr.make(),this._canvas=new l(this._options),this._canvas.drawQR(this._qr),this.append(this._container))},e.prototype.append=function(e){if(e){if("function"!=typeof e.appendChild)throw"Container should be a single DOM node";this._canvas&&e.appendChild(this._canvas.getCanvas()),this._container=e}},e.prototype.download=function(e){var t,s,i;this._canvas&&(t=this._canvas.getCanvas().toDataURL(e?"image/"+e:void 0),s="qr."+(e||"png"),(i=document.createElement("a")).download=s,i.href=t,document.body.appendChild(i),i.click(),document.body.removeChild(i))},e}(),y={dots:"dots",rounded:"rounded",square:"square"};s.d(t,"dotTypes",(function(){return y})),s.d(t,"errorCorrectionLevels",(function(){return p})),s.d(t,"errorCorrectionPercents",(function(){return d})),s.d(t,"modes",(function(){return i})),s.d(t,"qrTypes",(function(){return h})),t.default=v}]).default}]);