diff --git a/.env b/.env index b9424597..275377ca 100644 --- a/.env +++ b/.env @@ -1,5 +1,5 @@ API_ID=1025907 API_HASH=452b0359b988148995f22ff0f4229750 -VERSION=0.8.6 -VERSION_FULL=0.8.6 (6) -BUILD=6 +VERSION=0.9.0 +VERSION_FULL=0.9.0 (10) +BUILD=10 diff --git a/CHANGELOG.md b/CHANGELOG.md index b43353f4..10755202 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +### 0.9.0 (10) +* Application can now work with new 64-bit identifiers +* Added Swipe-to-Reply on devices with touchscreen +* Refactored folders & dialogs +* Added confirmation popups for logging out, canceling message editing +* Fixed sending video as file +* Fixed loading document's thumbnail on sending and forwarding +* Fixed inability to open a media sent as file in media viewer +* Other bugfixes and improvements + ### 0.8.6 * Added changelogs. * Audio player improvements: seek, next/previous buttons, volume controls. Changing volume in the video player will affect audio as well. diff --git a/build.js b/build.js index e2f48b59..1a1b0b65 100644 --- a/build.js +++ b/build.js @@ -3,7 +3,7 @@ const { spawn } = require('child_process'); const version = process.argv[2] || 'same'; -const changelog = ''; +const changelog = process.argv[3] || ''; const child = spawn(`npm`, ['run', 'change-version', version, changelog].filter(Boolean)); child.stdout.on('data', (chunk) => { console.log(chunk.toString()); diff --git a/public/assets/fonts/tgico.svg b/public/assets/fonts/tgico.svg index 12bd3971..44ff26ae 100644 --- a/public/assets/fonts/tgico.svg +++ b/public/assets/fonts/tgico.svg @@ -7,153 +7,158 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/assets/fonts/tgico.ttf b/public/assets/fonts/tgico.ttf index a8ea972c..377b0b5d 100644 Binary files a/public/assets/fonts/tgico.ttf and b/public/assets/fonts/tgico.ttf differ diff --git a/public/assets/fonts/tgico.woff b/public/assets/fonts/tgico.woff index 5afa2918..15e0b5e7 100644 Binary files a/public/assets/fonts/tgico.woff and b/public/assets/fonts/tgico.woff differ diff --git a/public/assets/img/avatarnext.svg b/public/assets/img/avatarnext.svg deleted file mode 100644 index 77ce415c..00000000 --- a/public/assets/img/avatarnext.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/assets/img/avatarprevious.svg b/public/assets/img/avatarprevious.svg deleted file mode 100644 index 5e58b96a..00000000 --- a/public/assets/img/avatarprevious.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/changelogs/0.9.0 (10).md b/public/changelogs/0.9.0 (10).md new file mode 100644 index 00000000..1d6e5696 --- /dev/null +++ b/public/changelogs/0.9.0 (10).md @@ -0,0 +1,8 @@ +• Application can now work with new 64-bit identifiers +• Added Swipe-to-Reply on devices with touchscreen +• Refactored folders & dialogs +• Added confirmation popups for logging out, canceling message editing +• Fixed sending video as file +• Fixed loading document's thumbnail on sending and forwarding +• Fixed inability to open a media sent as file in media viewer +• Other bugfixes and improvements diff --git a/src/components/animationIntersector.ts b/src/components/animationIntersector.ts index e1f6f53d..97e0404f 100644 --- a/src/components/animationIntersector.ts +++ b/src/components/animationIntersector.ts @@ -9,6 +9,7 @@ import rootScope from "../lib/rootScope"; import { IS_SAFARI } from "../environment/userAgent"; import { MOUNT_CLASS_TO } from "../config/debug"; import isInDOM from "../helpers/dom/isInDOM"; +import { indexOfAndSplice } from "../helpers/array"; export interface AnimationItem { el: HTMLElement, @@ -101,7 +102,7 @@ export class AnimationIntersector { } for(const group in this.byGroups) { - this.byGroups[group].findAndSplice(p => p === player); + indexOfAndSplice(this.byGroups[group], player); } this.observer.unobserve(el); diff --git a/src/components/appMediaPlaybackController.ts b/src/components/appMediaPlaybackController.ts index 68b2b4ff..79db41f3 100644 --- a/src/components/appMediaPlaybackController.ts +++ b/src/components/appMediaPlaybackController.ts @@ -27,7 +27,7 @@ import { onMediaLoad } from "../helpers/files"; // TODO: Safari: попробовать замаскировать подгрузку последнего чанка // TODO: Safari: пофиксить момент, когда заканчивается песня и пытаешься включить её заново - прогресс сразу в конце -export type MediaItem = {mid: number, peerId: number}; +export type MediaItem = {mid: number, peerId: PeerId}; type HTMLMediaElement = HTMLAudioElement | HTMLVideoElement; @@ -47,9 +47,9 @@ export type MediaSearchContext = SearchSuperContext & Partial<{ }>; type MediaDetails = { - peerId: number, + peerId: PeerId, mid: number, - docId: string, + docId: DocId, clean?: boolean, isScheduled?: boolean, isSingle?: boolean @@ -57,12 +57,12 @@ type MediaDetails = { class AppMediaPlaybackController { private container: HTMLElement; - private media: Map> = new Map(); + private media: Map> = new Map(); private scheduled: AppMediaPlaybackController['media'] = new Map(); private mediaDetails: Map = new Map(); private playingMedia: HTMLMediaElement; - private waitingMediaForLoad: Map>> = new Map(); + private waitingMediaForLoad: Map>> = new Map(); private waitingScheduledMediaForLoad: AppMediaPlaybackController['waitingMediaForLoad'] = new Map(); private waitingDocumentsForLoad: {[docId: string]: Set} = {}; @@ -271,7 +271,7 @@ class AppMediaPlaybackController { return media; } - public getMedia(peerId: number, mid: number, isScheduled?: boolean) { + public getMedia(peerId: PeerId, mid: number, isScheduled?: boolean) { const s = (isScheduled ? this.scheduled : this.media).get(peerId); return s?.get(mid); } @@ -326,7 +326,7 @@ class AppMediaPlaybackController { }/* , {once: true} */); } - public resolveWaitingForLoadMedia(peerId: number, mid: number, isScheduled?: boolean) { + public resolveWaitingForLoadMedia(peerId: PeerId, mid: number, isScheduled?: boolean) { const w = isScheduled ? this.waitingScheduledMediaForLoad : this.waitingMediaForLoad; const storage = w.get(peerId); if(!storage) { diff --git a/src/components/appMediaViewer.ts b/src/components/appMediaViewer.ts index fa7ebaf8..35bfd2b8 100644 --- a/src/components/appMediaViewer.ts +++ b/src/components/appMediaViewer.ts @@ -28,7 +28,7 @@ import AppSharedMediaTab from "./sidebarRight/tabs/sharedMedia"; type AppMediaViewerTargetType = { element: HTMLElement, mid: number, - peerId: number + peerId: PeerId }; export default class AppMediaViewer extends AppMediaViewerBase<'caption', 'delete' | 'forward', AppMediaViewerTargetType> { protected btnMenuDelete: HTMLElement; @@ -157,7 +157,7 @@ export default class AppMediaViewer extends AppMediaViewerBase<'caption', 'delet return promise; } */ - protected getMessageByPeer(peerId: number, mid: number) { + protected getMessageByPeer(peerId: PeerId, mid: number) { return this.searchContext.isScheduled ? appMessagesManager.getScheduledMessageByPeer(peerId, mid) : appMessagesManager.getMessageByPeer(peerId, mid); } @@ -193,6 +193,7 @@ export default class AppMediaViewer extends AppMediaViewerBase<'caption', 'delet const {mid, peerId} = this.target; if(mid && mid !== Number.MAX_SAFE_INTEGER) { const threadId = this.searchContext.threadId; + const message = this.getMessageByPeer(peerId, mid); this.close(e) //.then(() => mediaSizes.isMobile ? appSidebarRight.sharedMediaTab.closeBtn.click() : Promise.resolve()) .then(() => { @@ -203,7 +204,6 @@ export default class AppMediaViewer extends AppMediaViewerBase<'caption', 'delet } } - const message = this.getMessageByPeer(peerId, mid); appImManager.setInnerPeer(message.peerId, mid, threadId ? 'discussion' : undefined, threadId); }); } diff --git a/src/components/appMediaViewerAvatar.ts b/src/components/appMediaViewerAvatar.ts index a8e9ee64..17722156 100644 --- a/src/components/appMediaViewerAvatar.ts +++ b/src/components/appMediaViewerAvatar.ts @@ -5,15 +5,16 @@ */ import AvatarListLoader from "../helpers/avatarListLoader"; +import { Photo } from "../layer"; import appImManager from "../lib/appManagers/appImManager"; import appPhotosManager from "../lib/appManagers/appPhotosManager"; import AppMediaViewerBase from "./appMediaViewerBase"; -type AppMediaViewerAvatarTargetType = {element: HTMLElement, photoId: string}; +type AppMediaViewerAvatarTargetType = {element: HTMLElement, photoId: Photo.photo['id']}; export default class AppMediaViewerAvatar extends AppMediaViewerBase<'', 'delete', AppMediaViewerAvatarTargetType> { - public peerId: number; + public peerId: PeerId; - constructor(peerId: number) { + constructor(peerId: PeerId) { super(new AvatarListLoader({peerId}), [/* 'delete' */]); this.peerId = peerId; @@ -45,7 +46,7 @@ export default class AppMediaViewerAvatar extends AppMediaViewerBase<'', 'delete appPhotosManager.savePhotoFile(appPhotosManager.getPhoto(this.target.photoId), appImManager.chat.bubbles.lazyLoadQueue.queueId); }; - public async openMedia(photoId: string, target?: HTMLElement, fromRight = 0, prevTargets?: AppMediaViewerAvatarTargetType[], nextTargets?: AppMediaViewerAvatarTargetType[]) { + public async openMedia(photoId: Photo.photo['id'], target?: HTMLElement, fromRight = 0, prevTargets?: AppMediaViewerAvatarTargetType[], nextTargets?: AppMediaViewerAvatarTargetType[]) { if(this.setMoverPromise) return this.setMoverPromise; const photo = appPhotosManager.getPhoto(photoId); diff --git a/src/components/appMediaViewerBase.ts b/src/components/appMediaViewerBase.ts index 43dd7669..4b9bdd64 100644 --- a/src/components/appMediaViewerBase.ts +++ b/src/components/appMediaViewerBase.ts @@ -1096,7 +1096,7 @@ export default class AppMediaViewerBase< } */ } - protected setAuthorInfo(fromId: number, timestamp: number) { + protected setAuthorInfo(fromId: PeerId, timestamp: number) { replaceContent(this.author.date, formatFullSentTime(timestamp)); replaceContent(this.author.nameEl, new PeerTitle({ @@ -1115,7 +1115,7 @@ export default class AppMediaViewerBase< protected async _openMedia( media: MyDocument | MyPhoto, timestamp: number, - fromId: number, + fromId: PeerId, fromRight: number, target?: HTMLElement, reverse = false, diff --git a/src/components/appMediaViewerNew.ts b/src/components/appMediaViewerNew.ts index 7011613b..66d51c18 100644 --- a/src/components/appMediaViewerNew.ts +++ b/src/components/appMediaViewerNew.ts @@ -1080,7 +1080,7 @@ // type AppMediaViewerTargetType = { // element: HTMLElement, // mid: number, -// peerId: number +// peerId: PeerId // }; // export default class AppMediaViewer extends AppMediaViewerBase<'caption', 'delete' | 'forward', AppMediaViewerTargetType> { // public currentMessageId = 0; @@ -1336,9 +1336,9 @@ // type AppMediaViewerAvatarTargetType = {element: HTMLElement, photoId: string}; // export class AppMediaViewerAvatar extends AppMediaViewerBase<'', 'delete', AppMediaViewerAvatarTargetType> { // public currentPhotoId: string; -// public peerId: number; +// public peerId: PeerId; -// constructor(peerId: number) { +// constructor(peerId: PeerId) { // super(['delete']); // this.peerId = peerId; @@ -1373,7 +1373,7 @@ // }; // protected loadMoreMedia = (older = true) => { -// if(this.peerId < 0) return Promise.resolve(); // ! это значит, что открыло аватар чата, но следующих фотографий нет. +// if(this.peerId.isAnyChat()) return Promise.resolve(); // ! это значит, что открыло аватар чата, но следующих фотографий нет. // if(this.loadedAllMediaDown) return Promise.resolve(); // if(this.loadMediaPromiseDown) return this.loadMediaPromiseDown; diff --git a/src/components/appNavigationController.ts b/src/components/appNavigationController.ts index 45291d0b..52a20c48 100644 --- a/src/components/appNavigationController.ts +++ b/src/components/appNavigationController.ts @@ -10,6 +10,8 @@ import { logger } from "../lib/logger"; import { doubleRaf } from "../helpers/schedulers"; import blurActiveElement from "../helpers/dom/blurActiveElement"; import { cancelEvent } from "../helpers/dom/cancelEvent"; +import { indexOfAndSplice } from "../helpers/array"; +import isSwipingBackSafari from "../helpers/dom/isSwipingBackSafari"; export type NavigationItem = { type: 'left' | 'right' | 'im' | 'chat' | 'popup' | 'media' | 'menu' | @@ -73,7 +75,17 @@ export class AppNavigationController { if(e.touches.length > 1) return; this.debug && this.log('touchstart'); - const detach = () => { + if(isSwipingBackSafari(e)) { + isPossibleSwipe = true; + + window.addEventListener('touchend', () => { + setTimeout(() => { + isPossibleSwipe = false; + }, 100); + }, {passive: true, once: true}); + } + + /* const detach = () => { window.removeEventListener('touchend', onTouchEnd); window.removeEventListener('touchmove', onTouchMove); }; @@ -105,7 +117,7 @@ export class AppNavigationController { }; window.addEventListener('touchend', onTouchEnd, options); - window.addEventListener('touchmove', onTouchMove, options); + window.addEventListener('touchmove', onTouchMove, options); */ }, options); } @@ -171,7 +183,7 @@ export class AppNavigationController { } public removeItem(item: NavigationItem) { - this.navigations.findAndSplice(i => i === item); + indexOfAndSplice(this.navigations, item); } public removeByType(type: NavigationItem['type'], single = false) { diff --git a/src/components/appSearch.ts b/src/components/appSearch.ts index a917bd54..e4f19510 100644 --- a/src/components/appSearch.ts +++ b/src/components/appSearch.ts @@ -74,7 +74,7 @@ export default class AppSearch { private listsContainer: HTMLDivElement = null; - private peerId = 0; // 0 - means global + private peerId: PeerId; // 0 - means global private threadId = 0; private scrollable: Scrollable; @@ -117,7 +117,7 @@ export default class AppSearch { if(all) { this.searchInput.value = ''; this.query = ''; - this.peerId = 0; + this.peerId = undefined; this.threadId = 0; } @@ -132,7 +132,7 @@ export default class AppSearch { this.searchPromise = null; } - public beginSearch(peerId = 0, threadId = 0, query = '') { + public beginSearch(peerId?: PeerId, threadId = 0, query = '') { this.peerId = peerId; this.threadId = threadId; diff --git a/src/components/appSearchSuper..ts b/src/components/appSearchSuper..ts index 781f4777..ac0fbae2 100644 --- a/src/components/appSearchSuper..ts +++ b/src/components/appSearchSuper..ts @@ -50,12 +50,13 @@ import { cancelEvent } from "../helpers/dom/cancelEvent"; import { attachClickEvent, simulateClickEvent } from "../helpers/dom/clickEvent"; import { MyDocument } from "../lib/appManagers/appDocsManager"; import AppMediaViewer from "./appMediaViewer"; +import lockTouchScroll from "../helpers/dom/lockTouchScroll"; //const testScroll = false; export type SearchSuperType = MyInputMessagesFilter/* | 'members' */; export type SearchSuperContext = { - peerId: number, + peerId: PeerId, inputFilter: {_: MyInputMessagesFilter}, query?: string, maxId?: number, @@ -81,7 +82,7 @@ class SearchContextMenu { private buttons: (ButtonMenuItemOptions & {verify?: () => boolean, withSelection?: true})[]; private element: HTMLElement; private target: HTMLElement; - private peerId: number; + private peerId: PeerId; private mid: number; private isSelected: boolean; @@ -109,7 +110,7 @@ class SearchContextMenu { if(e instanceof MouseEvent) e.cancelBubble = true; this.target = item; - this.peerId = +item.dataset.peerId; + this.peerId = item.dataset.peerId.toPeerId(); this.mid = +item.dataset.mid; this.isSelected = searchSuper.selection.isMidSelected(this.peerId, this.mid); @@ -236,7 +237,7 @@ export default class AppSearchSuper { private lazyLoadQueue = new LazyLoadQueue(); public middleware = getMiddleware(); - public historyStorage: Partial<{[type in SearchSuperType]: {mid: number, peerId: number}[]}> = {}; + public historyStorage: Partial<{[type in SearchSuperType]: {mid: number, peerId: PeerId}[]}> = {}; public usedFromHistory: Partial<{[type in SearchSuperType]: number}> = {}; public urlsToRevoke: string[] = []; @@ -326,10 +327,35 @@ export default class AppSearchSuper { this.tabsContainer = document.createElement('div'); this.tabsContainer.classList.add('search-super-tabs-container', 'tabs-container'); + let unlockScroll: ReturnType; if(IS_TOUCH_SUPPORTED) { - handleTabSwipe(this.tabsContainer, (next) => { - const prevId = this.selectTab.prevId(); - this.selectTab(next ? prevId + 1 : prevId - 1); + handleTabSwipe({ + element: this.tabsContainer, + onSwipe: (xDiff, yDiff, e) => { + const prevId = this.selectTab.prevId(); + const children = Array.from(this.tabsMenu.children) as HTMLElement[]; + let idx: number; + if(xDiff > 0) { + for(let i = prevId + 1; i < children.length; ++i) { + if(!children[i].classList.contains('hide')) { + idx = i; + break; + } + } + } else { + for(let i = prevId - 1; i >= 0; --i) { + if(!children[i].classList.contains('hide')) { + idx = i; + break; + } + } + } + + if(idx !== undefined) { + unlockScroll = lockTouchScroll(this.tabsContainer); + this.selectTab(idx); + } + } }); } @@ -441,6 +467,11 @@ export default class AppSearchSuper { this.scrollable.scrollTop = this.mediaTab.scroll.scrollTop; } + if(unlockScroll) { + unlockScroll(); + unlockScroll = undefined; + } + this.onTransitionEnd(); }, undefined, navScrollable); @@ -461,14 +492,14 @@ export default class AppSearchSuper { return; } - const peerId = +target.dataset.peerId; + const peerId = target.dataset.peerId.toPeerId(); const targets = (Array.from(this.tabs[inputFilter].querySelectorAll('.' + targetClassName)) as HTMLElement[]).map(el => { const containerEl = findUpClassName(el, className); return { element: el, mid: +containerEl.dataset.mid, - peerId: +containerEl.dataset.peerId + peerId: containerEl.dataset.peerId.toPeerId() }; }); @@ -923,7 +954,7 @@ export default class AppSearchSuper { } private loadChats() { - const renderedPeerIds: Set = new Set(); + const renderedPeerIds: Set = new Set(); const middleware = this.middleware.get(); for(let i in this.searchGroups) { @@ -934,7 +965,7 @@ export default class AppSearchSuper { const query = this.searchContext.query; if(query) { - const setResults = (results: number[], group: SearchGroup, showMembersCount = false) => { + const setResults = (results: PeerId[], group: SearchGroup, showMembersCount = false) => { results.forEach((peerId) => { if(renderedPeerIds.has(peerId)) { return; @@ -957,7 +988,7 @@ export default class AppSearchSuper { if(showMembersCount && (peer.participants_count || peer.participants)) { const regExp = new RegExp(`(${escapeRegExp(query)}|${escapeRegExp(cleanSearchText(query))})`, 'gi'); dom.titleSpan.innerHTML = dom.titleSpan.innerHTML.replace(regExp, '$1'); - dom.lastMessageSpan.append(appProfileManager.getChatMembersString(-peerId)); + dom.lastMessageSpan.append(appProfileManager.getChatMembersString(peerId.toChatId())); } else if(peerId === rootScope.myId) { dom.lastMessageSpan.append(i18n('Presence.YourChat')); } else { @@ -989,7 +1020,7 @@ export default class AppSearchSuper { }; return Promise.all([ - appUsersManager.getContacts(query, true) + appUsersManager.getContactsPeerIds(query, true) .then(onLoad) .then((contacts) => { if(contacts) { @@ -1050,7 +1081,7 @@ export default class AppSearchSuper { autonomous: true }); - dom.lastMessageSpan.append(peerId > 0 ? appUsersManager.getUserStatusString(peerId) : appProfileManager.getChatMembersString(-peerId)); + dom.lastMessageSpan.append(peerId.isUser() ? appUsersManager.getUserStatusString(peerId) : appProfileManager.getChatMembersString(peerId.toChatId())); }); if(!state.recentSearch.length) { @@ -1093,7 +1124,7 @@ export default class AppSearchSuper { } private loadMembers(mediaTab: SearchSuperMediaTab) { - const id = -this.searchContext.peerId; + const id = this.searchContext.peerId.toChatId(); const middleware = this.middleware.get(); let promise: Promise; @@ -1114,7 +1145,7 @@ export default class AppSearchSuper { return; } - const peerId = +li.dataset.peerId; + const peerId = li.dataset.peerId.toPeerId(); let promise: Promise = Promise.resolve(); if(mediaSizes.isMobile) { promise = appSidebarRight.toggleSidebar(false); @@ -1130,7 +1161,7 @@ export default class AppSearchSuper { participants.forEach(participant => { const peerId = appChatsManager.getParticipantPeerId(participant); - if(peerId < 0) { + if(peerId.isAnyChat()) { return; } @@ -1386,7 +1417,7 @@ export default class AppSearchSuper { return !this.loaded[inputFilter] || (this.historyStorage[inputFilter] && this.usedFromHistory[inputFilter] < this.historyStorage[inputFilter].length); }); - if(peerId > 0) { + if(peerId.isUser()) { toLoad.findAndSplice(mediaTab => mediaTab.type === 'members'); } @@ -1456,7 +1487,7 @@ export default class AppSearchSuper { } public canViewMembers() { - return this.searchContext.peerId < 0 && !appChatsManager.isBroadcast(-this.searchContext.peerId) && appChatsManager.hasRights(-this.searchContext.peerId, 'view_participants'); + return this.searchContext.peerId.isAnyChat() && !appChatsManager.isBroadcast(this.searchContext.peerId.toChatId()) && appChatsManager.hasRights(this.searchContext.peerId.toChatId(), 'view_participants'); } public cleanup() { @@ -1566,7 +1597,7 @@ export default class AppSearchSuper { } public setQuery({peerId, query, threadId, historyStorage, folderId, minDate, maxDate}: { - peerId: number, + peerId: PeerId, query?: string, threadId?: number, historyStorage?: AppSearchSuper['historyStorage'], @@ -1575,7 +1606,7 @@ export default class AppSearchSuper { maxDate?: number }) { this.searchContext = { - peerId: peerId || 0, + peerId, query: query || '', inputFilter: {_: this.mediaTab.inputFilter}, threadId, diff --git a/src/components/appSelectPeers.ts b/src/components/appSelectPeers.ts index 7060344e..112ee5d2 100644 --- a/src/components/appSelectPeers.ts +++ b/src/components/appSelectPeers.ts @@ -20,7 +20,7 @@ import findUpClassName from "../helpers/dom/findUpClassName"; import PeerTitle from "./peerTitle"; import { cancelEvent } from "../helpers/dom/cancelEvent"; import replaceContent from "../helpers/dom/replaceContent"; -import { filterUnique } from "../helpers/array"; +import { filterUnique, indexOfAndSplice } from "../helpers/array"; import debounce from "../helpers/schedulers/debounce"; import windowSize from "../helpers/windowSize"; @@ -28,7 +28,6 @@ type PeerType = 'contacts' | 'dialogs' | 'channelParticipants'; // TODO: правильная сортировка для addMembers, т.е. для peerType: 'contacts', потому что там идут сначала контакты - потом неконтакты, а должно всё сортироваться по имени -let loadedAllDialogs = false, loadAllDialogsPromise: Promise; export default class AppSelectPeers { public container = document.createElement('div'); public list = appDialogsManager.createChatList(/* { @@ -42,8 +41,8 @@ export default class AppSelectPeers { public selectedContainer: HTMLElement; public input: HTMLInputElement; - //public selected: {[peerId: number]: HTMLElement} = {}; - public selected = new Set(); + //public selected: {[peerId: PeerId]: HTMLElement} = {}; + public selected = new Set(); public freezed = false; @@ -52,23 +51,23 @@ export default class AppSelectPeers { private promise: Promise; private query = ''; - private cachedContacts: number[]; + private cachedContacts: PeerId[]; private loadedWhat: Partial<{[k in 'dialogs' | 'archived' | 'contacts' | 'channelParticipants']: true}> = {}; - private renderedPeerIds: Set = new Set(); + private renderedPeerIds: Set = new Set(); private appendTo: HTMLElement; private onChange: (length: number) => void; private peerType: PeerType[] = ['dialogs']; - private renderResultsFunc: (peerIds: number[]) => void; + private renderResultsFunc: (peerIds: PeerId[]) => void; private chatRightsAction: ChatRights; private multiSelect = true; private rippleEnabled = true; private avatarSize = 48; private tempIds: {[k in keyof AppSelectPeers['loadedWhat']]: number} = {}; - private peerId = 0; + private peerId: PeerId; private placeholder: LangPackKey; @@ -95,7 +94,7 @@ export default class AppSelectPeers { this.container.classList.add('selector'); const f = (this.renderResultsFunc || this.renderResults).bind(this); - this.renderResultsFunc = (peerIds: number[]) => { + this.renderResultsFunc = (peerIds: PeerId[]) => { if(this.needSwitchList) { this.scrollable.splitUp.replaceWith(this.list); this.scrollable.setVirtualContainer(this.list); @@ -144,7 +143,7 @@ export default class AppSelectPeers { const peerId = target.dataset.key; const li = this.chatsContainer.querySelector('[data-peer-id="' + peerId + '"]') as HTMLElement; if(!li) { - this.remove(+peerId || peerId); + this.remove(peerId.toPeerId()); } else { li.click(); } @@ -165,8 +164,8 @@ export default class AppSelectPeers { if(!target) return; if(this.freezed) return; - let key: any = target.dataset.peerId; - key = +key || key; + let key: PeerId | string = target.dataset.peerId; + key = key.isPeerId() ? key.toPeerId() : key; if(!this.multiSelect) { this.add(key); @@ -208,7 +207,7 @@ export default class AppSelectPeers { private onInput = () => { const value = this.input.value; if(this.query !== value) { - if(this.peerType.includes('contacts')) { + if(this.peerType.includes('contacts') || this.peerType.includes('dialogs')) { this.cachedContacts = null; } @@ -283,9 +282,9 @@ export default class AppSelectPeers { this.renderSaved(); this.offsetIndex = newOffsetIndex; - - this.renderResultsFunc(dialogs.map(dialog => dialog.peerId)); } + + this.renderResultsFunc(dialogs.map(dialog => dialog.peerId)); if(value.isEnd) { if(!this.loadedWhat.dialogs) { @@ -299,18 +298,18 @@ export default class AppSelectPeers { } else { this.loadedWhat.archived = true; - if(!this.loadedWhat.contacts && this.peerType.includes('contacts')) { + if(!this.loadedWhat.contacts/* && this.peerType.includes('contacts') */) { return this.getMoreContacts(); } } } } - private filterByRights(peerId: number) { + private filterByRights(peerId: PeerId) { return ( - peerId > 0 && + peerId.isUser() && (this.chatRightsAction !== 'send_messages' || appUsersManager.canSendToUser(peerId)) - ) || appChatsManager.hasRights(-peerId, this.chatRightsAction); + ) || appChatsManager.hasRights(peerId.toChatId(), this.chatRightsAction); } private async getMoreContacts() { @@ -320,6 +319,8 @@ export default class AppSelectPeers { return; } + const isGlobalSearch = this.peerType.includes('contacts'); + if(!this.cachedContacts) { /* const promises: Promise[] = [appUsersManager.getContacts(this.query)]; if(!this.peerType.includes('dialogs')) { @@ -330,39 +331,40 @@ export default class AppSelectPeers { this.cachedContacts = (await this.promise)[0].slice(); */ const tempId = this.getTempId('contacts'); const promise = Promise.all([ - appUsersManager.getContacts(this.query), + isGlobalSearch ? appUsersManager.getContactsPeerIds(this.query) : [], this.query ? appUsersManager.searchContacts(this.query) : undefined ]); this.promise = promise; - const [cachedContacts, searchResult] = await promise; + let [cachedContacts, searchResult] = await promise; if(this.tempIds.contacts !== tempId) { return; } if(searchResult) { - let resultPeerIds = searchResult.my_results.concat(searchResult.results); + // do not add global result if only dialogs needed + let resultPeerIds = isGlobalSearch ? searchResult.my_results.concat(searchResult.results) : searchResult.my_results; if(this.chatRightsAction) { resultPeerIds = resultPeerIds.filter(peerId => this.filterByRights(peerId)); } if(!this.peerType.includes('dialogs')) { - resultPeerIds = resultPeerIds.filter(peerId => peerId > 0); + resultPeerIds = resultPeerIds.filter(peerId => peerId.isUser()); } this.cachedContacts = filterUnique(cachedContacts.concat(resultPeerIds)); } else this.cachedContacts = cachedContacts.slice(); - this.cachedContacts.findAndSplice(userId => userId === rootScope.myId); // no my account + indexOfAndSplice(this.cachedContacts, rootScope.myId); // no my account this.promise = null; } - if(this.cachedContacts.length) { + // if(this.cachedContacts.length) { const pageCount = windowSize.windowH / 72 * 1.25 | 0; const arr = this.cachedContacts.splice(0, pageCount); this.renderResultsFunc(arr); - } + // } if(!this.cachedContacts.length) { this.loadedWhat.contacts = true; @@ -384,7 +386,7 @@ export default class AppSelectPeers { const pageCount = 50; // same as in group permissions to use cache const tempId = this.getTempId('channelParticipants'); - const promise = appProfileManager.getChannelParticipants(-this.peerId, {_: 'channelParticipantsSearch', q: this.query}, pageCount, this.list.childElementCount); + const promise = appProfileManager.getChannelParticipants(this.peerId.toChatId(), {_: 'channelParticipantsSearch', q: this.query}, pageCount, this.list.childElementCount); const participants = await promise; if(this.tempIds.channelParticipants !== tempId) { return; @@ -393,7 +395,7 @@ export default class AppSelectPeers { const peerIds = participants.participants.map(participant => { return appChatsManager.getParticipantPeerId(participant); }); - peerIds.findAndSplice(u => u === rootScope.myId); + indexOfAndSplice(peerIds, rootScope.myId); this.renderResultsFunc(peerIds); if(this.list.childElementCount >= participants.count || participants.participants.length < pageCount) { @@ -409,18 +411,18 @@ export default class AppSelectPeers { const get = () => { const promises: Promise[] = []; - if(!loadedAllDialogs && (this.peerType.includes('dialogs')/* || this.peerType.includes('contacts') */)) { - if(!loadAllDialogsPromise) { - loadAllDialogsPromise = appMessagesManager.getConversationsAll() - .then(() => { - loadedAllDialogs = true; - }).finally(() => { - loadAllDialogsPromise = null; - }); - } + // if(!loadedAllDialogs && (this.peerType.includes('dialogs')/* || this.peerType.includes('contacts') */)) { + // if(!loadAllDialogsPromise) { + // loadAllDialogsPromise = appMessagesManager.getConversationsAll() + // .then(() => { + // loadedAllDialogs = true; + // }).finally(() => { + // loadAllDialogsPromise = null; + // }); + // } - promises.push(loadAllDialogsPromise); - } + // promises.push(loadAllDialogsPromise); + // } if((this.peerType.includes('dialogs')/* || this.loadedWhat.contacts */) && !this.loadedWhat.archived) { // to load non-contacts promises.push(this.getMoreDialogs()); @@ -430,7 +432,7 @@ export default class AppSelectPeers { } } - if(this.peerType.includes('contacts') && !this.loadedWhat.contacts) { + if((this.peerType.includes('contacts') || this.peerType.includes('dialogs')) && !this.loadedWhat.contacts) { promises.push(this.getMoreContacts()); } @@ -450,7 +452,7 @@ export default class AppSelectPeers { return promise; } - private renderResults(peerIds: number[]) { + private renderResults(peerIds: PeerId[]) { //console.log('will renderResults:', peerIds); // оставим только неконтакты с диалогов @@ -482,8 +484,8 @@ export default class AppSelectPeers { } let subtitleEl: HTMLElement; - if(peerId < 0) { - subtitleEl = appProfileManager.getChatMembersString(-peerId); + if(peerId.isAnyChat()) { + subtitleEl = appProfileManager.getChatMembersString(peerId.toChatId()); } else if(peerId === rootScope.myId) { subtitleEl = i18n(this.selfPresence); } else { @@ -494,9 +496,9 @@ export default class AppSelectPeers { }); } - public add(peerId: any, title?: string | HTMLElement, scroll = true) { + public add(key: PeerId | string, title?: string | HTMLElement, scroll = true) { //console.trace('add'); - this.selected.add(peerId); + this.selected.add(key); if(!this.multiSelect) { this.onChange(this.selected.size); @@ -516,13 +518,13 @@ export default class AppSelectPeers { avatarEl.setAttribute('dialog', '1'); avatarEl.classList.add('avatar-32'); - div.dataset.key = '' + peerId; - if(typeof(peerId) === 'number') { + div.dataset.key = '' + key; + if(key.isPeerId()) { if(title === undefined) { - title = new PeerTitle({peerId, dialog: true}).element; + title = new PeerTitle({peerId: key.toPeerId(), dialog: true}).element; } - avatarEl.setAttribute('peer', '' + peerId); + avatarEl.setAttribute('peer', '' + key); } if(title) { @@ -547,7 +549,7 @@ export default class AppSelectPeers { return div; } - public remove(key: any) { + public remove(key: PeerId | string) { if(!this.multiSelect) return; //const div = this.selected[peerId]; const div = this.selectedContainer.querySelector(`[data-key="${key}"]`) as HTMLElement; diff --git a/src/components/audio.ts b/src/components/audio.ts index 5c9b2458..85b7dd5d 100644 --- a/src/components/audio.ts +++ b/src/components/audio.ts @@ -352,7 +352,7 @@ export const findAudioTargets = (anchor: HTMLElement, useSearch: boolean) => { const elements = Array.from(container.querySelectorAll(selector)) as HTMLElement[]; const idx = elements.indexOf(anchor); - const mediaItems: MediaItem[] = elements.map(element => ({peerId: +element.dataset.peerId, mid: +element.dataset.mid})); + const mediaItems: MediaItem[] = elements.map(element => ({peerId: element.dataset.peerId.toPeerId(), mid: +element.dataset.mid})); prev = mediaItems.slice(0, idx); next = mediaItems.slice(idx + 1); @@ -481,31 +481,31 @@ export default class AudioElement extends HTMLElement { return togglePlay; }; + if(doc.thumbs?.length) { + const imgs: HTMLImageElement[] = []; + const wrapped = wrapPhoto({ + photo: doc, + message: null, + container: toggle, + boxWidth: 48, + boxHeight: 48, + loadPromises: this.loadPromises, + withoutPreloader: true, + lazyLoadQueue: this.lazyLoadQueue + }); + toggle.style.width = toggle.style.height = ''; + if(wrapped.images.thumb) imgs.push(wrapped.images.thumb); + if(wrapped.images.full) imgs.push(wrapped.images.full); + + this.classList.add('audio-with-thumb'); + imgs.forEach(img => img.classList.add('audio-thumb')); + } + if(!isOutgoing) { let preloader: ProgressivePreloader = this.preloader; onLoad(doc.type !== 'audio' && !this.noAutoDownload); - if(doc.thumbs) { - const imgs: HTMLImageElement[] = []; - const wrapped = wrapPhoto({ - photo: doc, - message: null, - container: toggle, - boxWidth: 48, - boxHeight: 48, - loadPromises: this.loadPromises, - withoutPreloader: true, - lazyLoadQueue: this.lazyLoadQueue - }); - toggle.style.width = toggle.style.height = ''; - if(wrapped.images.thumb) imgs.push(wrapped.images.thumb); - if(wrapped.images.full) imgs.push(wrapped.images.full); - - this.classList.add('audio-with-thumb'); - imgs.forEach(img => img.classList.add('audio-thumb')); - } - const r = (shouldPlay: boolean) => { if(this.audio.src) { return; diff --git a/src/components/avatar.ts b/src/components/avatar.ts index a282dd97..09f7d256 100644 --- a/src/components/avatar.ts +++ b/src/components/avatar.ts @@ -7,7 +7,7 @@ import appMessagesManager from "../lib/appManagers/appMessagesManager"; import appProfileManager from "../lib/appManagers/appProfileManager"; import rootScope from "../lib/rootScope"; -import { Message } from "../layer"; +import { Message, Photo } from "../layer"; import appPeersManager from "../lib/appManagers/appPeersManager"; import appPhotosManager from "../lib/appManagers/appPhotosManager"; import type { LazyLoadQueueIntersector } from "./lazyLoadQueue"; @@ -16,8 +16,9 @@ import { cancelEvent } from "../helpers/dom/cancelEvent"; import appAvatarsManager from "../lib/appManagers/appAvatarsManager"; import AppMediaViewer from "./appMediaViewer"; import AppMediaViewerAvatar from "./appMediaViewerAvatar"; +import { NULL_PEER_ID } from "../lib/mtproto/mtproto_config"; -const onAvatarUpdate = (peerId: number) => { +const onAvatarUpdate = (peerId: PeerId) => { appAvatarsManager.removeFromAvatarsCache(peerId); (Array.from(document.querySelectorAll('avatar-element[peer="' + peerId + '"]')) as AvatarElement[]).forEach(elem => { //console.log('updating avatar:', elem); @@ -32,7 +33,14 @@ rootScope.addEventListener('peer_title_edit', (peerId) => { } }); -export async function openAvatarViewer(target: HTMLElement, peerId: number, middleware: () => boolean, message?: any, prevTargets?: {element: HTMLElement, item: string | Message.messageService}[], nextTargets?: typeof prevTargets) { +export async function openAvatarViewer( + target: HTMLElement, + peerId: PeerId, + middleware: () => boolean, + message?: any, + prevTargets?: {element: HTMLElement, item: Photo.photo['id'] | Message.messageService}[], + nextTargets?: typeof prevTargets +) { let photo = await appProfileManager.getFullPhoto(peerId); if(!middleware() || !photo) { return; @@ -43,7 +51,7 @@ export async function openAvatarViewer(target: HTMLElement, peerId: number, midd return good ? target : null; }; - if(peerId < 0) { + if(peerId.isAnyChat()) { const hadMessage = !!message; const inputFilter = 'inputMessagesFilterChatPhotos'; if(!message) { @@ -105,11 +113,11 @@ export async function openAvatarViewer(target: HTMLElement, peerId: number, midd } } -const believeMe: Map> = new Map(); -const seen: Set = new Set(); +const believeMe: Map> = new Map(); +const seen: Set = new Set(); export default class AvatarElement extends HTMLElement { - private peerId: number; + private peerId: PeerId; private isDialog = false; private peerTitle: string; public loadPromises: Promise[]; @@ -160,13 +168,14 @@ export default class AvatarElement extends HTMLElement { //console.log('avatar changed attribute:', name, oldValue, newValue); // вызывается при изменении одного из перечисленных выше атрибутов if(name === 'peer') { - if(this.peerId === +newValue) { + const newPeerId = (newValue || '').toPeerId() || NULL_PEER_ID; + if(this.peerId === newPeerId) { return; } - this.peerId = appPeersManager.getPeerMigratedTo(+newValue) || +newValue; + this.peerId = appPeersManager.getPeerMigratedTo(newPeerId) || newPeerId; - const wasPeerId = +oldValue; + const wasPeerId = (oldValue || '').toPeerId() || NULL_PEER_ID; if(wasPeerId) { const set = believeMe.get(wasPeerId); if(set) { diff --git a/src/components/chat/autocompletePeerHelper.ts b/src/components/chat/autocompletePeerHelper.ts index 6d80c1a8..909cd618 100644 --- a/src/components/chat/autocompletePeerHelper.ts +++ b/src/components/chat/autocompletePeerHelper.ts @@ -42,7 +42,7 @@ export default class AutocompletePeerHelper extends AutocompleteHelper { }); } - public render(data: {peerId: number, name?: string, description?: string}[]) { + public render(data: {peerId: PeerId, name?: string, description?: string}[]) { if(this.init) { if(!data.length) { return; @@ -71,7 +71,7 @@ export default class AutocompletePeerHelper extends AutocompleteHelper { public static listElement(options: { className: string, - peerId: number, + peerId: PeerId, name?: string, description?: string }) { diff --git a/src/components/chat/bubbleGroups.ts b/src/components/chat/bubbleGroups.ts index 8f6d6c17..0a7a22bc 100644 --- a/src/components/chat/bubbleGroups.ts +++ b/src/components/chat/bubbleGroups.ts @@ -8,9 +8,10 @@ import rootScope from "../../lib/rootScope"; //import { generatePathData } from "../../helpers/dom"; import { MyMessage } from "../../lib/appManagers/appMessagesManager"; import type Chat from "./chat"; +import { indexOfAndSplice } from "../../helpers/array"; type Group = {bubble: HTMLElement, mid: number, timestamp: number}[]; -type BubbleGroup = {timestamp: number, fromId: number, mid: number, group: Group}; +type BubbleGroup = {timestamp: number, fromId: PeerId, mid: number, group: Group}; export default class BubbleGroups { private bubbles: Array = []; // map to group private detailsMap: Map = new Map(); @@ -28,7 +29,7 @@ export default class BubbleGroups { if(details.group.length) { details.group.findAndSplice(d => d.bubble === bubble); if(!details.group.length) { - this.groups.findAndSplice(g => g === details.group); + indexOfAndSplice(this.groups, details.group); } else { this.updateGroup(details.group); } @@ -37,6 +38,13 @@ export default class BubbleGroups { this.detailsMap.delete(bubble); } } + + changeBubbleMid(bubble: HTMLElement, mid: number) { + const details = this.detailsMap.get(bubble); + if(details) { + details.mid = mid; + } + } addBubble(bubble: HTMLElement, message: MyMessage, reverse: boolean) { //return; @@ -48,7 +56,7 @@ export default class BubbleGroups { // fix for saved messages forward to self if(fromId === rootScope.myId && message.peerId === rootScope.myId && (message as any).fwdFromId === fromId) { - fromId = -fromId; + fromId = fromId.toPeerId(true); } // try to find added diff --git a/src/components/chat/bubbles.ts b/src/components/chat/bubbles.ts index 5a22f138..e8e02222 100644 --- a/src/components/chat/bubbles.ts +++ b/src/components/chat/bubbles.ts @@ -20,7 +20,7 @@ import { CHAT_ANIMATION_GROUP } from "../../lib/appManagers/appImManager"; import { getObjectKeysAndSort } from "../../helpers/object"; import { IS_TOUCH_SUPPORTED } from "../../environment/touchSupport"; import { logger } from "../../lib/logger"; -import rootScope, { BroadcastEvents } from "../../lib/rootScope"; +import rootScope from "../../lib/rootScope"; import BubbleGroups from "./bubbleGroups"; import PopupDatePicker from "../popups/datePicker"; import PopupForward from "../popups/forward"; @@ -75,6 +75,9 @@ import { SEND_WHEN_ONLINE_TIMESTAMP } from "../../lib/mtproto/constants"; import windowSize from "../../helpers/windowSize"; import { formatPhoneNumber } from "../../helpers/formatPhoneNumber"; import AppMediaViewer from "../appMediaViewer"; +import SetTransition from "../singleTransition"; +import handleHorizontalSwipe from "../../helpers/dom/handleHorizontalSwipe"; +import { cancelContextMenuOpening } from "../misc"; const USE_MEDIA_TAILS = false; const IGNORE_ACTIONS: Set = new Set([ @@ -98,11 +101,11 @@ export default class ChatBubbles { private getHistoryTopPromise: Promise; private getHistoryBottomPromise: Promise; - public peerId = 0; + public peerId: PeerId; //public messagesCount: number = -1; private unreadOut = new Set(); - public needUpdate: {replyToPeerId: number, replyMid: number, mid: number}[] = []; // if need wrapSingleMessage + public needUpdate: {replyToPeerId: PeerId, replyMid: number, mid: number}[] = []; // if need wrapSingleMessage public bubbles: {[mid: string]: HTMLDivElement} = {}; public skippedMids: Set = new Set(); @@ -170,7 +173,8 @@ export default class ChatBubbles { private viewsMids: Set = new Set(); private sendViewCountersDebounced: () => Promise; - constructor(private chat: Chat, + constructor( + private chat: Chat, private appMessagesManager: AppMessagesManager, private appStickersManager: AppStickersManager, private appUsersManager: AppUsersManager, @@ -216,7 +220,7 @@ export default class ChatBubbles { const message = this.chat.getMessage(mid); if(+bubble.dataset.timestamp >= (message.date + serverTimeManager.serverTimeOffset - 1)) { - //this.bubbleGroups.addBubble(bubble, message, false); // ! TEMP COMMENTED + this.bubbleGroups.changeBubbleMid(bubble, mid); return; } @@ -266,10 +270,18 @@ export default class ChatBubbles { } } - if(message.media?.document && !message.media.document.type) { + if(message.media?.document) { const div = bubble.querySelector(`.document-container[data-mid="${tempId}"] .document`); if(div) { - div.replaceWith(wrapDocument({message})); + const container = findUpClassName(div, 'document-container'); + + if(!tempMessage.media?.document?.thumbs?.length && message.media.document.thumbs?.length) { + div.replaceWith(wrapDocument({message})); + } + + if(container) { + container.dataset.mid = '' + mid; + } } } @@ -434,6 +446,74 @@ export default class ChatBubbles { // attachClickEvent(this.bubblesContainer, this.onBubblesClick, {listenerSetter: this.listenerSetter}); this.listenerSetter.add(this.bubblesContainer)('click', this.onBubblesClick/* , {capture: true, passive: false} */); + if(IS_TOUCH_SUPPORTED) { + const className = 'is-gesturing-reply'; + const MAX = 64; + const replyAfter = MAX * .75; + let shouldReply = false; + let target: HTMLElement; + let icon: HTMLElement; + handleHorizontalSwipe({ + element: this.bubblesContainer, + verifyTouchTarget: (e) => { + if(this.chat.selection.isSelecting || !this.appMessagesManager.canSendToPeer(this.peerId, this.chat.threadId)) { + return false; + } + + // cancelEvent(e); + target = findUpClassName(e.target, 'bubble'); + if(target) { + SetTransition(target, className, true, 250); + void target.offsetLeft; // reflow + + if(!icon) { + icon = document.createElement('span'); + icon.classList.add('tgico-reply_filled', 'bubble-gesture-reply-icon'); + } else { + icon.classList.remove('is-visible'); + icon.style.opacity = ''; + } + + target/* .querySelector('.bubble-content') */.append(icon); + } + + return !!target; + }, + onSwipe: (xDiff, yDiff) => { + shouldReply = xDiff >= replyAfter; + + if(shouldReply && !icon.classList.contains('is-visible')) { + icon.classList.add('is-visible'); + } + icon.style.opacity = '' + Math.min(1, xDiff / replyAfter); + + const x = -Math.max(0, Math.min(MAX, xDiff)); + target.style.transform = `translateX(${x}px)`; + cancelContextMenuOpening(); + }, + onReset: () => { + const _target = target; + SetTransition(_target, className, false, 250, () => { + if(icon.parentElement === _target) { + icon.classList.remove('is-visible'); + icon.remove(); + } + }); + + fastRaf(() => { + _target.style.transform = ``; + + if(shouldReply) { + const {mid} = _target.dataset; + this.chat.input.initMessageReply(+mid); + shouldReply = false; + } + }); + }, + listenerOptions: {capture: true} + }); + } + if(DEBUG) { this.listenerSetter.add(this.bubblesContainer)('dblclick', (e) => { const bubble = findUpClassName(e.target, 'grouped-item') || findUpClassName(e.target, 'bubble'); @@ -540,7 +620,7 @@ export default class ChatBubbles { }); this.listenerSetter.add(rootScope)('chat_update', (chatId) => { - if(this.peerId === -chatId) { + if(this.peerId === chatId.toPeerId(true)) { const hadRights = this.chatInner.classList.contains('has-rights'); const hasRights = this.appMessagesManager.canSendToPeer(this.peerId, this.chat.threadId); @@ -551,7 +631,7 @@ export default class ChatBubbles { } }); - this.listenerSetter.add(rootScope)('settings_updated', (e: BroadcastEvents['settings_updated']) => { + this.listenerSetter.add(rootScope)('settings_updated', (e) => { if(e.key === 'settings.emoji.big') { const isScrolledDown = this.scrollable.isScrolledDown; if(!isScrolledDown) { @@ -872,7 +952,7 @@ export default class ChatBubbles { const contactDiv: HTMLElement = findUpClassName(target, 'contact'); if(contactDiv) { - this.chat.appImManager.setInnerPeer(+contactDiv.dataset.peerId); + this.chat.appImManager.setInnerPeer(contactDiv.dataset.peerId.toPeerId()); return; } @@ -890,7 +970,7 @@ export default class ChatBubbles { const replies = message.replies; if(replies) { this.appMessagesManager.getDiscussionMessage(this.peerId, message.mid).then(message => { - this.chat.appImManager.setInnerPeer(-replies.channel_id, undefined, 'discussion', (message as MyMessage).mid); + this.chat.appImManager.setInnerPeer(replies.channel_id.toPeerId(true), undefined, 'discussion', (message as MyMessage).mid); }); } } @@ -901,21 +981,19 @@ export default class ChatBubbles { const nameDiv = findUpClassName(target, 'peer-title') || findUpClassName(target, 'name') || findUpTag(target, 'AVATAR-ELEMENT'); if(nameDiv) { target = nameDiv || target; - const peerId = +(target.dataset.peerId || target.getAttribute('peer')); + const peerId = (target.dataset.peerId || target.getAttribute('peer')); const savedFrom = target.dataset.savedFrom; if(nameDiv.classList.contains('is-via')) { const message = '@' + this.appUsersManager.getUser(peerId).username + ' '; this.appDraftsManager.setDraft(this.peerId, this.chat.threadId, message); cancelEvent(e); } else if(savedFrom) { - const splitted = savedFrom.split('_'); - const peerId = +splitted[0]; - const msgId = +splitted[1]; + const [peerId, mid] = savedFrom.split('_'); - this.chat.appImManager.setInnerPeer(peerId, msgId); + this.chat.appImManager.setInnerPeer(peerId.toPeerId(), +mid); } else { if(peerId) { - this.chat.appImManager.setInnerPeer(peerId); + this.chat.appImManager.setInnerPeer(peerId.toPeerId()); } else { toast(I18n.format('HidAccount', true)); } @@ -967,7 +1045,7 @@ export default class ChatBubbles { return media._ === 'photo' || ['video', 'gif'].includes(media.type); }; - const targets: {element: HTMLElement, mid: number, peerId: number}[] = []; + const targets: {element: HTMLElement, mid: number, peerId: PeerId}[] = []; const ids = Object.keys(this.bubbles).map(k => +k).filter(id => { //if(!this.scrollable.visibleElements.find(e => e.element === this.bubbles[id])) return false; @@ -1051,11 +1129,9 @@ export default class ChatBubbles { if(['DIV', 'SPAN'].indexOf(target.tagName) !== -1/* || target.tagName === 'A' */) { if(target.classList.contains('goto-original')) { const savedFrom = bubble.dataset.savedFrom; - const splitted = savedFrom.split('_'); - const peerId = +splitted[0]; - const msgId = +splitted[1]; + const [peerId, mid] = savedFrom.split('_'); ////this.log('savedFrom', peerId, msgID); - this.chat.appImManager.setInnerPeer(peerId, msgId); + this.chat.appImManager.setInnerPeer(peerId.toPeerId(), +mid); return; } else if(target.classList.contains('forward')) { const mid = +bubble.dataset.mid; @@ -1681,13 +1757,13 @@ export default class ChatBubbles { ////console.timeEnd('appImManager cleanup'); } - public setPeer(peerId: number, lastMsgId?: number): {cached?: boolean, promise: Chat['setPeerPromise']} { + public setPeer(peerId: PeerId, lastMsgId?: number): {cached?: boolean, promise: Chat['setPeerPromise']} { //console.time('appImManager setPeer'); //console.time('appImManager setPeer pre promise'); ////console.time('appImManager: pre render start'); if(!peerId) { this.cleanup(true); - this.peerId = 0; + this.peerId = peerId; return null; } @@ -2186,6 +2262,10 @@ export default class ChatBubbles { bubble.className = classNames.join(' '); contentWrapper = bubble.lastElementChild as HTMLElement; + if(!contentWrapper.classList.contains('bubble-content-wrapper')) { + contentWrapper = bubble.querySelector('.bubble-content-wrapper'); + } + bubbleContainer = contentWrapper.firstElementChild as HTMLDivElement; bubbleContainer.innerHTML = ''; bubbleContainer.style.cssText = ''; @@ -2242,9 +2322,9 @@ export default class ChatBubbles { s.classList.add('service-msg'); if(action) { if(action._ === 'messageActionChannelMigrateFrom') { - s.append(i18n('ChatMigration.From', [new PeerTitle({peerId: -action.chat_id}).element])); + s.append(i18n('ChatMigration.From', [new PeerTitle({peerId: action.chat_id.toPeerId(true)}).element])); } else if(action._ === 'messageActionChatMigrateTo') { - s.append(i18n('ChatMigration.To', [new PeerTitle({peerId: -action.channel_id}).element])); + s.append(i18n('ChatMigration.To', [new PeerTitle({peerId: action.channel_id.toPeerId(true)}).element])); } else { s.append(this.appMessagesManager.wrapMessageActionTextNew(message)); } @@ -2376,28 +2456,19 @@ export default class ChatBubbles { case 'keyboardButtonSwitchInline': { buttonEl = document.createElement('button'); - buttonEl.classList.add('is-switch-inline'/* , 'tgico' */); - const i = document.createElement('i'); - i.classList.add('forward-icon'); - i.innerHTML = ` - - - - - `; - buttonEl.append(i); + buttonEl.classList.add('is-switch-inline', 'tgico'); attachClickEvent(buttonEl, (e) => { cancelEvent(e); const botId = message.viaBotId || message.fromId; - let promise: Promise; + let promise: Promise; if(button.pFlags.same_peer) promise = Promise.resolve(this.peerId); else promise = this.appInlineBotsManager.checkSwitchReturn(botId).then(peerId => { if(peerId) { return peerId; } - return new Promise((resolve, reject) => { + return new Promise((resolve, reject) => { new PopupForward({ [this.peerId]: [] }, (peerId) => { @@ -2883,8 +2954,8 @@ export default class ChatBubbles { let savedFrom = ''; - // const needName = ((peerId < 0 && (peerId !== message.fromId || our)) && message.fromId !== rootScope.myId) || message.viaBotId; - const needName = (message.fromId !== rootScope.myId && peerId < 0 && !this.appPeersManager.isBroadcast(peerId)) || message.viaBotId; + // const needName = ((peerId.isAnyChat() && (peerId !== message.fromId || our)) && message.fromId !== rootScope.myId) || message.viaBotId; + const needName = (message.fromId !== rootScope.myId && this.appPeersManager.isAnyChat(peerId) && !this.appPeersManager.isBroadcast(peerId)) || message.viaBotId; if(needName || message.fwd_from || message.reply_to_mid) { // chat let title: HTMLElement | DocumentFragment; @@ -3498,12 +3569,12 @@ export default class ChatBubbles { elements.push(b, '\n\n'); } else if(this.appPeersManager.isAnyGroup(this.peerId) && this.appPeersManager.getPeer(this.peerId).pFlags.creator) { this.renderEmptyPlaceholder('group', bubble, message, elements); - } else if(rootScope.myId === this.peerId) { - this.renderEmptyPlaceholder('saved', bubble, message, elements); - } else if(this.peerId > 0 && !isBot && this.appMessagesManager.canSendToPeer(this.peerId) && this.chat.type === 'chat') { - this.renderEmptyPlaceholder('greeting', bubble, message, elements); } else if(this.chat.type === 'scheduled') { this.renderEmptyPlaceholder('noScheduledMessages', bubble, message, elements); + } else if(rootScope.myId === this.peerId) { + this.renderEmptyPlaceholder('saved', bubble, message, elements); + } else if(this.appPeersManager.isUser(this.peerId) && !isBot && this.appMessagesManager.canSendToPeer(this.peerId) && this.chat.type === 'chat') { + this.renderEmptyPlaceholder('greeting', bubble, message, elements); } else { this.renderEmptyPlaceholder('noMessages', bubble, message, elements); } @@ -3537,7 +3608,7 @@ export default class ChatBubbles { const message: Omit & {message?: string} = { _: service ? 'messageService' : 'message', date: 0, - id: -(this.peerId + offset), + id: -(+this.peerId + offset), peer_id: this.appPeersManager.getOutputPeer(this.peerId), pFlags: {} }; @@ -3566,11 +3637,11 @@ export default class ChatBubbles { return; } */ - if(side === 'top' && value && this.appUsersManager.isBot(this.peerId)) { + if(side === 'top' && value && this.appPeersManager.isBot(this.peerId)) { this.log('inject bot description'); const middleware = this.getMiddleware(); - return this.appProfileManager.getProfile(this.peerId).then(userFull => { + return this.appProfileManager.getProfile(this.peerId.toUserId()).then(userFull => { if(!middleware()) { return; } diff --git a/src/components/chat/chat.ts b/src/components/chat/chat.ts index ad43b509..3424b5b2 100644 --- a/src/components/chat/chat.ts +++ b/src/components/chat/chat.ts @@ -33,7 +33,7 @@ import ChatContextMenu from "./contextMenu"; import ChatInput from "./input"; import ChatSelection from "./selection"; import ChatTopbar from "./topbar"; -import { REPLIES_PEER_ID } from "../../lib/mtproto/mtproto_config"; +import { NULL_PEER_ID, REPLIES_PEER_ID } from "../../lib/mtproto/mtproto_config"; import SetTransition from "../singleTransition"; import { fastRaf } from "../../helpers/schedulers"; import AppPrivateSearchTab from "../sidebarRight/tabs/search"; @@ -57,7 +57,7 @@ export default class Chat extends EventListenerBase<{ public wasAlreadyUsed = false; // public initPeerId = 0; - public peerId = 0; + public peerId: PeerId; public threadId: number; public setPeerPromise: Promise; public peerChanged: boolean; @@ -170,7 +170,7 @@ export default class Chat extends EventListenerBase<{ } } - public init(/* peerId: number */) { + public init(/* peerId: PeerId */) { // this.initPeerId = peerId; this.topbar = new ChatTopbar(this, appSidebarRight, this.appMessagesManager, this.appPeersManager, this.appChatsManager, this.appNotificationsManager, this.appProfileManager, this.appUsersManager); @@ -217,7 +217,7 @@ export default class Chat extends EventListenerBase<{ this.bubbles.listenerSetter.add(rootScope)('dialog_drop', (e) => { if(e.peerId === this.peerId) { - this.appImManager.setPeer(0); + this.appImManager.setPeer(NULL_PEER_ID); } }); } @@ -249,7 +249,7 @@ export default class Chat extends EventListenerBase<{ this.selection.cleanup(); } - public setPeer(peerId: number, lastMsgId?: number) { + public setPeer(peerId: PeerId, lastMsgId?: number) { if(!peerId) { this.inited = false; } else if(!this.inited) { @@ -324,15 +324,21 @@ export default class Chat extends EventListenerBase<{ } public setAutoDownloadMedia() { + const peerId = this.peerId; + if(!peerId) { + return; + } + let type: keyof State['settings']['autoDownload']; - if(this.peerId < 0) { - if(this.appPeersManager.isBroadcast(this.peerId)) { + + if(!peerId.isUser()) { + if(peerId.isBroadcast()) { type = 'channels'; } else { type = 'groups'; } } else { - if(this.appUsersManager.isContact(this.peerId)) { + if(peerId.isContact()) { type = 'contacts'; } else { type = 'private'; diff --git a/src/components/chat/commandsHelper.ts b/src/components/chat/commandsHelper.ts index 14591a73..039c61a7 100644 --- a/src/components/chat/commandsHelper.ts +++ b/src/components/chat/commandsHelper.ts @@ -31,7 +31,7 @@ export default class CommandsHelper extends AutocompletePeerHelper { ); } - public checkQuery(query: string, peerId: number) { + public checkQuery(query: string, peerId: PeerId) { if(!this.appUsersManager.isBot(peerId)) { return false; } @@ -47,12 +47,12 @@ export default class CommandsHelper extends AutocompletePeerHelper { ignoreCase: true }); - const commands: Map = new Map(); + const commands: Map = new Map(); botInfos.forEach(botInfo => { botInfo.commands.forEach(botCommand => { const c = '/' + botCommand.command; commands.set(botCommand.command, { - peerId: botInfo.user_id, + peerId: botInfo.user_id.toPeerId(false), name: c, description: botCommand.description }); diff --git a/src/components/chat/contextMenu.ts b/src/components/chat/contextMenu.ts index 83a57330..551ddaae 100644 --- a/src/components/chat/contextMenu.ts +++ b/src/components/chat/contextMenu.ts @@ -6,7 +6,7 @@ import type { AppMessagesManager } from "../../lib/appManagers/appMessagesManager"; import type { AppPeersManager } from "../../lib/appManagers/appPeersManager"; -import type { AppPollsManager, Poll } from "../../lib/appManagers/appPollsManager"; +import type { AppPollsManager } from "../../lib/appManagers/appPollsManager"; import type { AppDocsManager, MyDocument } from "../../lib/appManagers/appDocsManager"; import type { AppMessagesIdsManager } from "../../lib/appManagers/appMessagesIdsManager"; import type Chat from "./chat"; @@ -24,7 +24,7 @@ import findUpClassName from "../../helpers/dom/findUpClassName"; import { cancelEvent } from "../../helpers/dom/cancelEvent"; import { attachClickEvent, simulateClickEvent } from "../../helpers/dom/clickEvent"; import isSelectionEmpty from "../../helpers/dom/isSelectionEmpty"; -import { Message } from "../../layer"; +import { Message, Poll } from "../../layer"; import PopupReportMessages from "../popups/reportMessages"; export default class ChatContextMenu { @@ -38,7 +38,7 @@ export default class ChatContextMenu { private isTextSelected: boolean; private isAnchorTarget: boolean; private isUsernameTarget: boolean; - private peerId: number; + private peerId: PeerId; private mid: number; private message: any; @@ -130,7 +130,8 @@ export default class ChatContextMenu { //appImManager.log('contextmenu', e, bubble, side); positionMenu((e as TouchEvent).touches ? (e as TouchEvent).touches[0] : e as MouseEvent, this.element, side); openBtnMenu(this.element, () => { - this.peerId = this.mid = 0; + this.mid = 0; + this.peerId = undefined; this.target = null; }); }; @@ -417,7 +418,7 @@ export default class ChatContextMenu { if(threadMessage) url += '?comment=' + msgId; key = 'LinkCopied'; } else { - url += 'c/' + Math.abs(this.peerId) + '/' + msgId; + url += 'c/' + this.peerId.toChatId() + '/' + msgId; if(threadMessage) url += '?thread=' + this.appMessagesIdsManager.getServerMessageId(threadMessage.mid); key = 'LinkCopiedPrivateInfo'; } diff --git a/src/components/chat/inlineHelper.ts b/src/components/chat/inlineHelper.ts index 016f7f54..1721d183 100644 --- a/src/components/chat/inlineHelper.ts +++ b/src/components/chat/inlineHelper.ts @@ -35,7 +35,7 @@ export default class InlineHelper extends AutocompleteHelper { private gifsMasonry: GifsMasonry; private superStickerRenderer: SuperStickerRenderer; private onChangeScreen: () => void; - public checkQuery: (peerId: number, username: string, query: string) => ReturnType; + public checkQuery: (peerId: PeerId, username: string, query: string) => ReturnType; constructor(appendTo: HTMLElement, controller: AutocompleteHelperController, @@ -50,7 +50,7 @@ export default class InlineHelper extends AutocompleteHelper { const {peerId, botId, queryId} = this.list.dataset; return this.chat.input.getReadyToSend(() => { const queryAndResultIds = this.appInlineBotsManager.generateQId(queryId, (target as HTMLElement).dataset.resultId); - this.appInlineBotsManager.sendInlineResult(+peerId, +botId, queryAndResultIds, { + this.appInlineBotsManager.sendInlineResult(peerId.toPeerId(), botId, queryAndResultIds, { clearDraft: true, scheduleDate: this.chat.input.scheduleDate, silent: this.chat.input.sendSilent, @@ -80,7 +80,7 @@ export default class InlineHelper extends AutocompleteHelper { }); } - public _checkQuery = async(peerId: number, username: string, query: string) => { + public _checkQuery = async(peerId: PeerId, username: string, query: string) => { const middleware = this.controller.getMiddleware(); const peer = await this.appUsersManager.resolveUsername(username); @@ -105,7 +105,7 @@ export default class InlineHelper extends AutocompleteHelper { const list = this.list.cloneNode() as HTMLElement; list.dataset.peerId = '' + peerId; list.dataset.botId = '' + peer.id; - list.dataset.queryId = botResults.query_id; + list.dataset.queryId = '' + botResults.query_id; const gifsMasonry = new GifsMasonry(null, ANIMATION_GROUP, this.scrollable, false); diff --git a/src/components/chat/input.ts b/src/components/chat/input.ts index f844d564..595c5774 100644 --- a/src/components/chat/input.ts +++ b/src/components/chat/input.ts @@ -81,6 +81,8 @@ import { copy } from '../../helpers/object'; import PopupPeer from '../popups/peer'; import MEDIA_MIME_TYPES_SUPPORTED from '../../environment/mediaMimeTypesSupport'; import appMediaPlaybackController from '../appMediaPlaybackController'; +import { NULL_PEER_ID } from '../../lib/mtproto/mtproto_config'; +import replaceContent from '../../helpers/dom/replaceContent'; const RECORD_MIN_TIME = 500; const POSTING_MEDIA_NOT_ALLOWED = 'Posting media content isn\'t allowed in this group.'; @@ -110,20 +112,22 @@ export default class ChatInput { private replyKeyboard: ReplyKeyboard; private attachMenu: HTMLButtonElement; - private attachMenuButtons: (ButtonMenuItemOptions & {verify: (peerId: number, threadId: number) => boolean})[]; + private attachMenuButtons: (ButtonMenuItemOptions & {verify: (peerId: PeerId, threadId: number) => boolean})[]; private sendMenu: SendMenu; private replyElements: { container: HTMLElement, - cancelBtn: HTMLButtonElement + cancelBtn: HTMLButtonElement, + iconBtn: HTMLButtonElement } = {} as any; private getWebPagePromise: Promise; private willSendWebPage: WebPage = null; - private forwarding: {[fromPeerId: number]: number[]}; + private forwarding: {[frompeerId: PeerId]: number[]}; public replyToMsgId: number; public editMsgId: number; + public editMessage: Message.message; private noWebPage: true; public scheduleDate: number; public sendSilent: true; @@ -301,9 +305,10 @@ export default class ChatInput { this.replyElements.container = document.createElement('div'); this.replyElements.container.classList.add('reply-wrapper'); - this.replyElements.cancelBtn = ButtonIcon('close reply-cancel'); + this.replyElements.iconBtn = ButtonIcon(''); + this.replyElements.cancelBtn = ButtonIcon('close reply-cancel', {noRipple: true}); - this.replyElements.container.append(this.replyElements.cancelBtn); + this.replyElements.container.append(this.replyElements.iconBtn, this.replyElements.cancelBtn); this.newMessageWrapper = document.createElement('div'); this.newMessageWrapper.classList.add('new-message-wrapper'); @@ -392,7 +397,7 @@ export default class ChatInput { onClick: () => { new PopupCreatePoll(this.chat).show(); }, - verify: (peerId, threadId) => peerId < 0 && this.appMessagesManager.canSendToPeer(peerId, threadId, 'send_polls') + verify: (peerId, threadId) => peerId.isAnyChat() && this.appMessagesManager.canSendToPeer(peerId, threadId, 'send_polls') }]; this.attachMenu = ButtonMenuToggle({noRipple: true, listenerSetter: this.listenerSetter}, 'top-left', this.attachMenuButtons); @@ -649,7 +654,7 @@ export default class ChatInput { const peerId = this.chat.peerId; new PopupPinMessage(peerId, 0, true, () => { - this.chat.appImManager.setPeer(0); // * close tab + this.chat.appImManager.setPeer(NULL_PEER_ID); // * close tab // ! костыль, это скроет закреплённые сообщения сразу, вместо того, чтобы ждать пока анимация перехода закончится const originalChat = this.chat.appImManager.chat; @@ -690,7 +695,7 @@ export default class ChatInput { } public scheduleSending = (callback: () => void = this.sendMessage.bind(this, true), initDate = new Date()) => { - const canSendWhenOnline = this.chat.peerId > 0 && this.appUsersManager.isUserOnlineVisible(this.chat.peerId); + const canSendWhenOnline = rootScope.myId !== this.chat.peerId && this.chat.peerId.isUser() && this.appUsersManager.isUserOnlineVisible(this.chat.peerId); new PopupSchedule(initDate, (timestamp) => { const minTimestamp = (Date.now() / 1000 | 0) + 10; @@ -777,7 +782,10 @@ export default class ChatInput { if(this.messageInputField.value === draft.rMessage && this.replyToMsgId === draft.reply_to_msg_id) return false; - this.clearHelper(); + if(fromUpdate) { + this.clearHelper(); + } + this.noWebPage = draft.pFlags.no_webpage; if(draft.reply_to_msg_id) { this.initMessageReply(draft.reply_to_msg_id); @@ -1195,7 +1203,7 @@ export default class ChatInput { this.undoHistory.length = 0; } - const urlEntities: Array = entities.filter(e => e._ === 'messageEntityUrl' || e._ === 'messageEntityTextUrl') as any; + const urlEntities: Array = !this.editMessage?.media && entities.filter(e => e._ === 'messageEntityUrl' || e._ === 'messageEntityTextUrl') as any; if(urlEntities.length) { for(const entity of urlEntities) { let url: string; @@ -1376,7 +1384,7 @@ export default class ChatInput { this.stickersHelper.checkEmoticon(value); } else if(firstChar === '@') { // mentions const topMsgId = this.chat.threadId ? this.appMessagesIdsManager.getServerMessageId(this.chat.threadId) : undefined; - if(this.mentionsHelper.checkQuery(query, this.chat.peerId > 0 ? 0 : this.chat.peerId, topMsgId)) { + if(this.mentionsHelper.checkQuery(query, this.chat.peerId.isUser() ? NULL_PEER_ID : this.chat.peerId, topMsgId)) { foundHelper = this.mentionsHelper; } } else if(!matches[1] && firstChar === '/') { // commands @@ -1456,7 +1464,7 @@ export default class ChatInput { this.sendMessage(); } } else { - if(this.chat.peerId < 0 && !this.appMessagesManager.canSendToPeer(this.chat.peerId, this.chat.threadId, 'send_media')) { + if(this.chat.peerId.isAnyChat() && !this.appMessagesManager.canSendToPeer(this.chat.peerId, this.chat.threadId, 'send_media')) { toast(POSTING_MEDIA_NOT_ALLOWED); return; } @@ -1569,7 +1577,7 @@ export default class ChatInput { } }; - private onHelperCancel = (e?: Event) => { + private onHelperCancel = (e?: Event, force?: boolean) => { if(e) { cancelEvent(e); } @@ -1593,6 +1601,24 @@ export default class ChatInput { if(needReturn) return; } + if(this.helperType === 'edit' && !force) { + const message = this.editMessage + const value = RichTextProcessor.parseMarkdown(this.messageInputField.value, []); + if(message.message !== value) { + new PopupPeer('discard-editing', { + buttons: [{ + langKey: 'Alert.Confirm.Discard', + callback: () => { + this.onHelperCancel(undefined, true); + } + }], + descriptionLangKey: 'Chat.Edit.Cancel.Text' + }).show(); + + return; + } + } + this.clearHelper(); this.updateSendBtn(); }; @@ -1726,7 +1752,7 @@ export default class ChatInput { //return; if(this.editMsgId) { - const message = this.chat.getMessage(this.editMsgId); + const message = this.editMessage; if(!!value.trim() || message.media) { this.appMessagesManager.editMessage(message, value, { entities, @@ -1758,7 +1784,7 @@ export default class ChatInput { const scheduleDate = this.scheduleDate; setTimeout(() => { for(const fromPeerId in forwarding) { - this.appMessagesManager.forwardMessages(peerId, +fromPeerId, forwarding[fromPeerId], { + this.appMessagesManager.forwardMessages(peerId, fromPeerId.toPeerId(), forwarding[fromPeerId], { silent, scheduleDate: scheduleDate }); @@ -1773,7 +1799,7 @@ export default class ChatInput { document = this.appDocsManager.getDoc(document); const flag = document.type === 'sticker' ? 'send_stickers' : (document.type === 'gif' ? 'send_gifs' : 'send_media'); - if(this.chat.peerId < 0 && !this.appMessagesManager.canSendToPeer(this.chat.peerId, this.chat.threadId, flag)) { + if(this.chat.peerId.isAnyChat() && !this.appMessagesManager.canSendToPeer(this.chat.peerId, this.chat.threadId, flag)) { toast(POSTING_MEDIA_NOT_ALLOWED); return false; } @@ -1817,7 +1843,7 @@ export default class ChatInput { } */ public initMessageEditing(mid: number) { - const message = this.chat.getMessage(mid); + const message: Message.message = this.chat.getMessage(mid); let input = RichTextProcessor.wrapDraftText(message.message, {entities: message.totalEntities}); const f = () => { @@ -1825,26 +1851,27 @@ export default class ChatInput { this.setTopInfo('edit', f, i18n('AccDescrEditing'), replyFragment, input, message); this.editMsgId = mid; + this.editMessage = message; input = undefined; }; f(); } - public initMessagesForward(fromPeerIdsMids: {[fromPeerId: number]: number[]}) { + public initMessagesForward(fromPeerIdsMids: {[fromPeerId: PeerId]: number[]}) { const f = () => { //const peerTitles: string[] - const fromPeerIds = Object.keys(fromPeerIdsMids).map(str => +str); - const smth: Set = new Set(); + const fromPeerIds = Object.keys(fromPeerIdsMids).map(fromPeerId => fromPeerId.toPeerId()); + const smth: Set = new Set(); let length = 0; fromPeerIds.forEach(fromPeerId => { const mids = fromPeerIdsMids[fromPeerId]; mids.forEach(mid => { - const message = this.appMessagesManager.getMessageByPeer(fromPeerId, mid); + const message: Message.message = this.appMessagesManager.getMessageByPeer(fromPeerId, mid); if(message.fwd_from?.from_name && !message.fromId && !message.fwdFromId) { - smth.add(message.fwd_from.from_name); + smth.add('N' + message.fwd_from.from_name); } else { - smth.add(message.fromId); + smth.add('P' + message.fromId); } }); @@ -1853,8 +1880,10 @@ export default class ChatInput { const onlyFirstName = smth.size > 2; const peerTitles = [...smth].map(smth => { - return typeof(smth) === 'number' ? - new PeerTitle({peerId: smth, dialog: false, onlyFirstName}).element : + const type = smth[0]; + smth = smth.slice(1); + return type === 'P' ? + new PeerTitle({peerId: smth.toPeerId(), dialog: false, onlyFirstName}).element : (onlyFirstName ? smth.split(' ')[0] : smth); }); @@ -1895,6 +1924,10 @@ export default class ChatInput { } public initMessageReply(mid: number) { + if(this.replyToMsgId === mid) { + return; + } + let message: Message = this.chat.getMessage(mid); const f = () => { let peerTitleEl: HTMLElement; @@ -1937,9 +1970,12 @@ export default class ChatInput { this.willSendWebPage = null; } - this.replyToMsgId = undefined; - this.forwarding = undefined; - this.editMsgId = undefined; + if(type !== 'reply') { + this.replyToMsgId = undefined; + this.forwarding = undefined; + } + + this.editMsgId = this.editMessage = undefined; this.helperType = this.helperFunc = undefined; if(this.chat.container.classList.contains('is-helper-active')) { @@ -1961,12 +1997,18 @@ export default class ChatInput { }); } - public setTopInfo(type: ChatInputHelperType, + public setTopInfo( + type: ChatInputHelperType, callerFunc: () => void, title: Parameters[0] = '', subtitle: Parameters[1] = '', input?: string, - message?: any) { + message?: any + ) { + if(this.willSendWebPage && type === 'reply') { + return; + } + if(type !== 'webpage') { this.clearHelper(type); this.helperType = type; @@ -1978,6 +2020,7 @@ export default class ChatInput { replyParent.lastElementChild.remove(); } + this.replyElements.iconBtn.replaceWith(this.replyElements.iconBtn = ButtonIcon((type === 'webpage' ? 'link' : type) + ' active reply-icon', {noRipple: true})); replyParent.append(wrapReply(title, subtitle, message)); this.chat.container.classList.add('is-helper-active'); diff --git a/src/components/chat/mentionsHelper.ts b/src/components/chat/mentionsHelper.ts index 55d7d9a2..ade7f625 100644 --- a/src/components/chat/mentionsHelper.ts +++ b/src/components/chat/mentionsHelper.ts @@ -21,7 +21,7 @@ export default class MentionsHelper extends AutocompletePeerHelper { controller, 'mentions-helper', (target) => { - const user = appUsersManager.getUser(+(target as HTMLElement).dataset.peerId); + const user = appUsersManager.getUser((target as HTMLElement).dataset.peerId); let str = '', entity: MessageEntity; if(user.username) { str = '@' + user.username; @@ -41,12 +41,12 @@ export default class MentionsHelper extends AutocompletePeerHelper { ); } - public checkQuery(query: string, peerId: number, topMsgId: number) { + public checkQuery(query: string, peerId: PeerId, topMsgId: number) { const trimmed = query.trim(); // check that there is no whitespace if(query.length !== trimmed.length) return false; const middleware = this.controller.getMiddleware(); - this.appProfileManager.getMentions(peerId ? -peerId : 0, trimmed, topMsgId).then(peerIds => { + this.appProfileManager.getMentions(peerId && peerId.toChatId(), trimmed, topMsgId).then(peerIds => { if(!middleware()) return; const username = trimmed.slice(1).toLowerCase(); diff --git a/src/components/chat/messageRender.ts b/src/components/chat/messageRender.ts index dde236e5..170a60ea 100644 --- a/src/components/chat/messageRender.ts +++ b/src/components/chat/messageRender.ts @@ -31,14 +31,7 @@ export namespace MessageRender { if(!message.fwd_from?.saved_from_msg_id && chat.type !== 'pinned') { const forward = document.createElement('div'); - forward.classList.add('bubble-beside-button', 'forward'); - forward.innerHTML = ` - - - - - - `; + forward.classList.add('bubble-beside-button', 'forward', 'tgico-forward_filled'); bubbleContainer.append(forward); bubble.classList.add('with-beside-button'); } diff --git a/src/components/chat/replies.ts b/src/components/chat/replies.ts index 02d4790c..e94bf900 100644 --- a/src/components/chat/replies.ts +++ b/src/components/chat/replies.ts @@ -14,6 +14,7 @@ import { ripple } from "../ripple"; import AvatarElement from "../avatar"; import { i18n } from "../../lib/langPack"; import replaceContent from "../../helpers/dom/replaceContent"; +import appChatsManager from "../../lib/appManagers/appChatsManager"; const TAG_NAME = 'replies-element'; @@ -117,7 +118,7 @@ export default class RepliesElement extends HTMLElement { } if(replies) { - const historyStorage = appMessagesManager.getHistoryStorage(-replies.channel_id); + const historyStorage = appMessagesManager.getHistoryStorage(replies.channel_id.toPeerId(true)); let isUnread = false; if(replies.replies) { if(replies.read_max_id !== undefined && replies.max_id !== undefined) { diff --git a/src/components/chat/replyContainer.ts b/src/components/chat/replyContainer.ts index 1fe835d7..9d3d3843 100644 --- a/src/components/chat/replyContainer.ts +++ b/src/components/chat/replyContainer.ts @@ -52,7 +52,7 @@ export function wrapReplyDivAndCaption(options: { media = media.webpage; } - if(media.photo || (media.document && ['video', 'sticker', 'gif', 'round', 'photo'].indexOf(media.document.type) !== -1)) { + if(media.photo || (media.document && media.document.thumbs?.length)/* ['video', 'sticker', 'gif', 'round', 'photo', 'audio'].indexOf(media.document.type) !== -1) */) { middleware = appImManager.chat.bubbles.getMiddleware(); const lazyLoadQueue = appImManager.chat.bubbles.lazyLoadQueue; diff --git a/src/components/chat/replyKeyboard.ts b/src/components/chat/replyKeyboard.ts index 2609ebb3..a8ef1b36 100644 --- a/src/components/chat/replyKeyboard.ts +++ b/src/components/chat/replyKeyboard.ts @@ -24,7 +24,7 @@ export default class ReplyKeyboard extends DropdownHover { private listenerSetter: ListenerSetter; private appMessagesManager: AppMessagesManager; private btnHover: HTMLElement; - private peerId: number; + private peerId: PeerId; private touchListener: Listener; private chatInput: ChatInput; @@ -139,7 +139,7 @@ export default class ReplyKeyboard extends DropdownHover { return !hide; } - public setPeer(peerId: number) { + public setPeer(peerId: PeerId) { this.peerId = peerId; this.checkAvailability(); diff --git a/src/components/chat/search.ts b/src/components/chat/search.ts index d3e51730..566002e1 100644 --- a/src/components/chat/search.ts +++ b/src/components/chat/search.ts @@ -140,7 +140,7 @@ export default class ChatSearch { selectResult = (elem: HTMLElement) => { if(this.setPeerPromise) return this.setPeerPromise; - const peerId = +elem.dataset.peerId; + const peerId = elem.dataset.peerId.toPeerId(); const lastMsgId = +elem.dataset.mid || undefined; const index = whichChild(elem); diff --git a/src/components/chat/selection.ts b/src/components/chat/selection.ts index f09bde64..113fd2f6 100644 --- a/src/components/chat/selection.ts +++ b/src/components/chat/selection.ts @@ -37,14 +37,14 @@ import { attachContextMenuListener } from "../misc"; import { attachClickEvent, AttachClickOptions } from "../../helpers/dom/clickEvent"; import findUpAsChild from "../../helpers/dom/findUpAsChild"; -const accumulateMapSet = (map: Map>) => { +const accumulateMapSet = (map: Map>) => { return [...map.values()].reduce((acc, v) => acc + v.size, 0); }; //const MIN_CLICK_MOVE = 32; // minimum bubble height class AppSelection { - public selectedMids: Map> = new Map(); + public selectedMids: Map> = new Map(); public isSelecting = false; public selectedText: string; @@ -57,7 +57,7 @@ class AppSelection { protected onToggleSelection: (forwards: boolean) => void; protected onUpdateContainer: (cantForward: boolean, cantDelete: boolean, cantSend: boolean) => void; protected onCancelSelection: () => void; - protected toggleByMid: (peerId: number, mid: number) => void; + protected toggleByMid: (peerId: PeerId, mid: number) => void; protected toggleByElement: (bubble: HTMLElement) => void; protected navigationType: NavigationItem['type']; @@ -157,7 +157,7 @@ class AppSelection { return; } - const seen: Map> = new Map(); + const seen: AppSelection['selectedMids'] = new Map(); let selecting: boolean; /* let good = false; @@ -175,7 +175,7 @@ class AppSelection { const processElement = (element: HTMLElement, checkBetween = true) => { const mid = +element.dataset.mid; - const peerId = +element.dataset.peerId; + const peerId = (element.dataset.peerId || '').toPeerId(); if(!mid || !peerId) return; if(!isInDOM(firstTarget)) { @@ -280,7 +280,7 @@ class AppSelection { } protected isElementShouldBeSelected(element: HTMLElement) { - return this.isMidSelected(+element.dataset.peerId, +element.dataset.mid); + return this.isMidSelected(element.dataset.peerId.toPeerId(), +element.dataset.mid); } protected appendCheckbox(element: HTMLElement, checkboxField: CheckboxField) { @@ -435,7 +435,7 @@ class AppSelection { SetTransition(element, 'is-selected', isSelected, 200); } - public isMidSelected(peerId: number, mid: number) { + public isMidSelected(peerId: PeerId, mid: number) { const set = this.selectedMids.get(peerId); return set?.has(mid); } @@ -444,7 +444,7 @@ class AppSelection { return accumulateMapSet(this.selectedMids); } - protected toggleMid(peerId: number, mid: number, unselect?: boolean) { + protected toggleMid(peerId: PeerId, mid: number, unselect?: boolean) { let set = this.selectedMids.get(peerId); if(unselect || (unselect === undefined && set?.has(mid))) { if(set) { @@ -488,7 +488,7 @@ class AppSelection { /** * ! Call this method only to handle deleted messages */ - public deleteSelectedMids(peerId: number, mids: number[]) { + public deleteSelectedMids(peerId: PeerId, mids: number[]) { const set = this.selectedMids.get(peerId); if(!set) { return; @@ -556,7 +556,7 @@ export class SearchSelection extends AppSelection { public toggleByElement = (element: HTMLElement) => { const mid = +element.dataset.mid; - const peerId = +element.dataset.peerId; + const peerId = element.dataset.peerId.toPeerId(); if(!this.toggleMid(peerId, mid)) { return; @@ -565,7 +565,7 @@ export class SearchSelection extends AppSelection { this.updateElementSelection(element, this.isMidSelected(peerId, mid)); }; - public toggleByMid = (peerId: number, mid: number) => { + public toggleByMid = (peerId: PeerId, mid: number) => { const element = this.searchSuper.mediaTab.contentTab.querySelector(`.search-super-item[data-peer-id="${peerId}"][data-mid="${mid}"]`) as HTMLElement; this.toggleByElement(element); }; @@ -620,7 +620,7 @@ export class SearchSelection extends AppSelection { this.selectionForwardBtn = ButtonIcon(`forward ${BASE_CLASS}-forward`); attachClickEvent(this.selectionForwardBtn, () => { - const obj: {[fromPeerId: number]: number[]} = {}; + const obj: {[frompeerId: PeerId]: number[]} = {}; for(const [fromPeerId, mids] of this.selectedMids) { obj[fromPeerId] = Array.from(mids); } @@ -773,7 +773,7 @@ export default class ChatSelection extends AppSelection { this.updateElementSelection(bubble, this.isMidSelected(this.bubbles.peerId, mid)); }; - protected toggleByMid = (peerId: number, mid: number) => { + protected toggleByMid = (peerId: PeerId, mid: number) => { const mounted = this.bubbles.getMountedBubble(mid); if(mounted) { this.toggleByElement(mounted.bubble); @@ -895,7 +895,7 @@ export default class ChatSelection extends AppSelection { this.selectionForwardBtn = Button('btn-primary btn-transparent text-bold selection-container-forward', {icon: 'forward'}); this.selectionForwardBtn.append(i18n('Forward')); attachClickEvent(this.selectionForwardBtn, () => { - const obj: {[fromPeerId: number]: number[]} = {}; + const obj: {[frompeerId: PeerId]: number[]} = {}; for(const [fromPeerId, mids] of this.selectedMids) { obj[fromPeerId] = Array.from(mids); } diff --git a/src/components/chat/sendContextMenu.ts b/src/components/chat/sendContextMenu.ts index a9f0aa29..7d0b33f1 100644 --- a/src/components/chat/sendContextMenu.ts +++ b/src/components/chat/sendContextMenu.ts @@ -57,7 +57,7 @@ export default class SendMenu { }, options.listenerSetter); } - public setPeerId(peerId: number) { + public setPeerId(peerId: PeerId) { this.type = peerId === rootScope.myId ? 'reminder' : 'schedule'; } }; diff --git a/src/components/chat/topbar.ts b/src/components/chat/topbar.ts index 0f67e451..4dd1191c 100644 --- a/src/components/chat/topbar.ts +++ b/src/components/chat/topbar.ts @@ -44,6 +44,7 @@ import generateVerifiedIcon from "../generateVerifiedIcon"; import { fastRaf } from "../../helpers/schedulers"; import AppEditContactTab from "../sidebarRight/tabs/editContact"; import appMediaPlaybackController from "../appMediaPlaybackController"; +import { NULL_PEER_ID } from "../../lib/mtproto/mtproto_config"; export default class ChatTopbar { public container: HTMLDivElement; @@ -63,8 +64,8 @@ export default class ChatTopbar { public pinnedMessage: ChatPinnedMessage; private setUtilsRAF: number; - public peerId: number; - private wasPeerId: number; + public peerId: PeerId; + private wasPeerId: PeerId; private setPeerStatusInterval: number; public listenerSetter: ListenerSetter; @@ -156,7 +157,8 @@ export default class ChatTopbar { this.container.append(this.btnBack, this.chatInfo, this.chatUtils); if(this.chatAudio) { - this.container.append(this.chatAudio.divAndCaption.container, this.chatUtils); + // this.container.append(this.chatAudio.divAndCaption.container, this.chatUtils); + this.container.append(this.chatAudio.divAndCaption.container); } // * construction end @@ -177,12 +179,12 @@ export default class ChatTopbar { } const mid = +container.dataset.mid; - const peerId = +container.dataset.peerId; if(container.classList.contains('pinned-message')) { //if(!this.pinnedMessage.locked) { this.pinnedMessage.followPinnedMessage(mid); //} } else { + const peerId = container.dataset.peerId.toPeerId(); const searchContext = appMediaPlaybackController.getSearchContext(); this.chat.appImManager.setInnerPeer( peerId, @@ -214,14 +216,14 @@ export default class ChatTopbar { } else { const isFirstChat = this.chat.appImManager.chats.indexOf(this.chat) === 0; appNavigationController.back(isFirstChat ? 'im' : 'chat'); - return; + /* return; if(mediaSizes.activeScreen === ScreenSize.medium && !appNavigationController.findItemByType('chat')) { this.chat.appImManager.setPeer(0); blurActiveElement(); } else { appNavigationController.back('chat'); - } + } */ } }; @@ -259,14 +261,14 @@ export default class ChatTopbar { icon: 'comments', text: 'ViewDiscussion', onClick: () => { - this.appProfileManager.getChannelFull(-this.peerId).then(channelFull => { + this.appProfileManager.getChannelFull(this.peerId.toChatId()).then(channelFull => { if(channelFull.linked_chat_id) { - this.chat.appImManager.setInnerPeer(-channelFull.linked_chat_id); + this.chat.appImManager.setInnerPeer(channelFull.linked_chat_id.toPeerId(true)); } }); }, verify: () => { - const chatFull = this.appProfileManager.chatsFull[-this.peerId]; + const chatFull = this.appProfileManager.chatsFull[this.peerId.toChatId()]; return this.chat.type === 'chat' && this.appPeersManager.isBroadcast(this.peerId) && !!(chatFull as ChatFull.channelFull)?.linked_chat_id; } }, { @@ -310,7 +312,7 @@ export default class ChatTopbar { this.appSidebarRight.toggleSidebar(true); } }, - verify: () => this.peerId > 0 && !this.appUsersManager.isContact(this.peerId) + verify: () => this.appPeersManager.isContact(this.peerId) }, { icon: 'forward', text: 'ShareContact', @@ -349,7 +351,7 @@ export default class ChatTopbar { selfPresence: 'ChatYourSelf' }); }, - verify: () => rootScope.myId !== this.peerId && this.peerId > 0 && this.appUsersManager.isContact(this.peerId) + verify: () => rootScope.myId !== this.peerId && this.appPeersManager.isContact(this.peerId) }, { icon: 'lock', text: 'BlockUser', @@ -373,8 +375,9 @@ export default class ChatTopbar { }).show(); }, verify: () => { - const userFull = this.appProfileManager.usersFull[this.peerId]; - return this.peerId > 0 && this.peerId !== rootScope.myId && userFull && !userFull.pFlags?.blocked; + const userId = this.peerId.toUserId(); + const userFull = this.appProfileManager.usersFull[userId]; + return this.appPeersManager.isUser(this.peerId) && this.peerId !== rootScope.myId && userFull && !userFull.pFlags?.blocked; } }, { icon: 'lockoff', @@ -387,8 +390,8 @@ export default class ChatTopbar { }); }, verify: () => { - const userFull = this.appProfileManager.usersFull[this.peerId]; - return this.peerId > 0 && !!userFull?.pFlags?.blocked; + const userFull = this.appProfileManager.usersFull[this.peerId.toUserId()]; + return this.appPeersManager.isUser(this.peerId) && !!userFull?.pFlags?.blocked; } }, { icon: 'delete danger', @@ -440,7 +443,7 @@ export default class ChatTopbar { const middleware = this.chat.bubbles.getMiddleware(); this.btnJoin.setAttribute('disabled', 'true'); - const chatId = -this.peerId; + const chatId = this.peerId.toChatId(); let promise: Promise; if(this.appChatsManager.isChannel(chatId)) { promise = this.appChatsManager.joinChannel(chatId); @@ -458,7 +461,7 @@ export default class ChatTopbar { }, {listenerSetter: this.listenerSetter}); this.listenerSetter.add(rootScope)('chat_update', (chatId) => { - if(this.peerId === -chatId) { + if(this.peerId === chatId.toPeerId(true)) { const chat = this.appChatsManager.getChat(chatId) as Channel/* | Chat */; this.btnJoin.classList.toggle('hide', !(chat as Channel)?.pFlags?.left); @@ -554,7 +557,7 @@ export default class ChatTopbar { delete this.pinnedMessage; } - public setPeer(peerId: number) { + public setPeer(peerId: PeerId) { this.wasPeerId = this.peerId; this.peerId = peerId; @@ -570,12 +573,15 @@ export default class ChatTopbar { } const isBroadcast = this.appPeersManager.isBroadcast(peerId); - this.btnMute && this.btnMute.classList.toggle('hide', !isBroadcast); - if(this.btnJoin) { - replaceContent(this.btnJoin, i18n(this.appChatsManager.isChannel(-peerId) ? 'Chat.Subscribe' : 'ChannelJoin')); - this.btnJoin.classList.toggle('hide', !this.appChatsManager.getChat(-peerId)?.pFlags?.left); + if(this.appPeersManager.isAnyChat(peerId)) { + if(this.btnJoin) { + const chatId = peerId.toChatId(); + replaceContent(this.btnJoin, i18n(this.appChatsManager.isChannel(chatId) ? 'Chat.Subscribe' : 'ChannelJoin')); + this.btnJoin.classList.toggle('hide', !this.appChatsManager.getChat(chatId)?.pFlags?.left); + } } + this.setUtilsWidth(); const middleware = this.chat.bubbles.getMiddleware(); @@ -626,7 +632,7 @@ export default class ChatTopbar { // ! костыль х2, это нужно делать в другом месте if(!count) { - this.chat.appImManager.setPeer(0); // * close tab + this.chat.appImManager.setPeer(NULL_PEER_ID); // * close tab // ! костыль, это скроет закреплённые сообщения сразу, вместо того, чтобы ждать пока анимация перехода закончится const originalChat = this.chat.appImManager.chat; diff --git a/src/components/dialogsContextMenu.ts b/src/components/dialogsContextMenu.ts index d224c3a1..c12a3f48 100644 --- a/src/components/dialogsContextMenu.ts +++ b/src/components/dialogsContextMenu.ts @@ -23,7 +23,7 @@ export default class DialogsContextMenu { private element: HTMLElement; private buttons: (ButtonMenuItemOptions & {verify: () => boolean})[]; - private selectedId: number; + private selectedId: PeerId; private filterId: number; private dialog: Dialog; @@ -32,24 +32,18 @@ export default class DialogsContextMenu { icon: 'unread', text: 'MarkAsUnread', onClick: this.onUnreadClick, - verify: () => { - const isUnread = !!(this.dialog.pFlags?.unread_mark || this.dialog.unread_count); - return !isUnread; - } + verify: () => !appMessagesManager.isDialogUnread(this.dialog) }, { icon: 'readchats', text: 'MarkAsRead', onClick: this.onUnreadClick, - verify: () => { - const isUnread = !!(this.dialog.pFlags?.unread_mark || this.dialog.unread_count); - return isUnread; - } + verify: () => appMessagesManager.isDialogUnread(this.dialog) }, { icon: 'pin', text: 'ChatList.Context.Pin', onClick: this.onPinClick, verify: () => { - const isPinned = this.filterId > 1 ? appMessagesManager.filtersStorage.getFilter(this.filterId).pinned_peers.includes(this.dialog.peerId) : !!this.dialog.pFlags?.pinned; + const isPinned = this.filterId > 1 ? appMessagesManager.filtersStorage.getFilter(this.filterId).pinnedPeerIds.includes(this.dialog.peerId) : !!this.dialog.pFlags?.pinned; return !isPinned; } }, { @@ -57,7 +51,7 @@ export default class DialogsContextMenu { text: 'ChatList.Context.Unpin', onClick: this.onPinClick, verify: () => { - const isPinned = this.filterId > 1 ? appMessagesManager.filtersStorage.getFilter(this.filterId).pinned_peers.includes(this.dialog.peerId) : !!this.dialog.pFlags?.pinned; + const isPinned = this.filterId > 1 ? appMessagesManager.filtersStorage.getFilter(this.filterId).pinnedPeerIds.includes(this.dialog.peerId) : !!this.dialog.pFlags?.pinned; return isPinned; } }, { @@ -174,7 +168,7 @@ export default class DialogsContextMenu { this.filterId = appDialogsManager.filterId; - this.selectedId = +li.dataset.peerId; + this.selectedId = li.dataset.peerId.toPeerId(); this.dialog = appMessagesManager.getDialogOnly(this.selectedId); this.buttons.forEach(button => { diff --git a/src/components/editPeer.ts b/src/components/editPeer.ts index 8b2a1068..ba8ddb8c 100644 --- a/src/components/editPeer.ts +++ b/src/components/editPeer.ts @@ -22,13 +22,13 @@ export default class EditPeer { private inputFields: InputField[]; private listenerSetter: ListenerSetter; - private peerId: number; + private peerId: PeerId; private _disabled = false; private avatarSize = 120; constructor(options: { - peerId?: number, + peerId?: EditPeer['peerId'], inputFields: EditPeer['inputFields'], listenerSetter: ListenerSetter, doNotEditAvatar?: boolean, diff --git a/src/components/emoticonsDropdown/tabs/gifs.ts b/src/components/emoticonsDropdown/tabs/gifs.ts index 12d0458d..b44dedbf 100644 --- a/src/components/emoticonsDropdown/tabs/gifs.ts +++ b/src/components/emoticonsDropdown/tabs/gifs.ts @@ -23,7 +23,7 @@ export default class GifsTab implements EmoticonsTab { const masonry = new GifsMasonry(gifsContainer, EMOTICONSSTICKERGROUP, scroll); const preloader = putPreloader(this.content, true); - apiManager.invokeApi('messages.getSavedGifs', {hash: 0}).then((res) => { + apiManager.invokeApi('messages.getSavedGifs', {hash: '0'}).then((res) => { //console.log('getSavedGifs res:', res); if(res._ === 'messages.savedGifs') { diff --git a/src/components/emoticonsDropdown/tabs/stickers.ts b/src/components/emoticonsDropdown/tabs/stickers.ts index 12b5caa4..293e3058 100644 --- a/src/components/emoticonsDropdown/tabs/stickers.ts +++ b/src/components/emoticonsDropdown/tabs/stickers.ts @@ -198,8 +198,8 @@ export default class StickersTab implements EmoticonsTab { async renderStickerSet(set: StickerSet.stickerSet, prepend = false) { const categoryDiv = document.createElement('div'); categoryDiv.classList.add('sticker-category'); - categoryDiv.dataset.id = set.id; - categoryDiv.dataset.access_hash = set.access_hash; + categoryDiv.dataset.id = '' + set.id; + categoryDiv.dataset.access_hash = '' + set.access_hash; const button = document.createElement('button'); button.classList.add('btn-icon', 'menu-horizontal-div-item'); diff --git a/src/components/gifsMasonry.ts b/src/components/gifsMasonry.ts index 8a080eb5..9ffb4792 100644 --- a/src/components/gifsMasonry.ts +++ b/src/components/gifsMasonry.ts @@ -198,7 +198,7 @@ export default class GifsMasonry { div.style.width = size.width + 'px'; div.style.opacity = '0'; //div.style.height = h + 'px'; - div.dataset.docId = doc.id; + div.dataset.docId = '' + doc.id; appendTo.append(div); diff --git a/src/components/lazyLoadQueue.ts b/src/components/lazyLoadQueue.ts index 41dddb8d..263042bf 100644 --- a/src/components/lazyLoadQueue.ts +++ b/src/components/lazyLoadQueue.ts @@ -6,7 +6,7 @@ import { logger, LogTypes } from "../lib/logger"; import VisibilityIntersector, { OnVisibilityChange } from "./visibilityIntersector"; -import { findAndSpliceAll } from "../helpers/array"; +import { findAndSpliceAll, indexOfAndSplice } from "../helpers/array"; import throttle from "../helpers/schedulers/throttle"; type LazyLoadElementBase = { @@ -121,7 +121,7 @@ export class LazyLoadQueueBase { let added = 0; do { if(item) { - this.queue.findAndSplice(i => i === item); + indexOfAndSplice(this.queue, item); } else { item = this.getItem(); } diff --git a/src/components/peerProfile.ts b/src/components/peerProfile.ts index f95b3a80..2557d40b 100644 --- a/src/components/peerProfile.ts +++ b/src/components/peerProfile.ts @@ -52,7 +52,7 @@ export default class PeerProfile { private setBioTimeout: number; private setPeerStatusInterval: number; - private peerId = 0; + private peerId: PeerId; private threadId: number; constructor(public scrollable: Scrollable) { @@ -264,7 +264,7 @@ export default class PeerProfile { } //let membersLi = this.profileTabs.firstElementChild.children[0] as HTMLLIElement; - if(peerId > 0) { + if(peerId.isUser()) { //membersLi.style.display = 'none'; let user = appUsersManager.getUser(peerId); @@ -304,7 +304,7 @@ export default class PeerProfile { } let promise: Promise; - if(peerId > 0) { + if(peerId.isUser()) { promise = appProfileManager.getProfile(peerId, override).then(userFull => { if(this.peerId !== peerId || this.threadId !== threadId) { //this.log.warn('peer changed'); @@ -319,7 +319,7 @@ export default class PeerProfile { return true; }); } else { - promise = appProfileManager.getChatFull(-peerId, override).then((chatFull) => { + promise = appProfileManager.getChatFull(peerId.toChatId(), override).then((chatFull) => { if(this.peerId !== peerId || this.threadId !== threadId) { //this.log.warn('peer changed'); return false; @@ -342,8 +342,8 @@ export default class PeerProfile { }); } - public setPeer(peerId: number, threadId = 0) { - if(this.peerId === peerId && this.threadId === peerId) return; + public setPeer(peerId: PeerId, threadId = 0) { + if(this.peerId === peerId && this.threadId === threadId) return; if(this.init) { this.init(); diff --git a/src/components/peerProfileAvatars.ts b/src/components/peerProfileAvatars.ts index 300c449e..003b6d86 100644 --- a/src/components/peerProfileAvatars.ts +++ b/src/components/peerProfileAvatars.ts @@ -28,8 +28,8 @@ export default class PeerProfileAvatars { public arrowPrevious: HTMLElement; public arrowNext: HTMLElement; private tabs: HTMLDivElement; - private listLoader: ListLoader; - private peerId: number; + private listLoader: ListLoader; + private peerId: PeerId; constructor(public scrollable: Scrollable) { this.container = document.createElement('div'); @@ -48,14 +48,14 @@ export default class PeerProfileAvatars { this.tabs.classList.add(PeerProfileAvatars.BASE_CLASS + '-tabs'); this.arrowPrevious = document.createElement('div'); - this.arrowPrevious.classList.add(PeerProfileAvatars.BASE_CLASS + '-arrow'); + this.arrowPrevious.classList.add(PeerProfileAvatars.BASE_CLASS + '-arrow', 'tgico-avatarprevious'); /* const previousIcon = document.createElement('i'); previousIcon.classList.add(PeerProfileAvatars.BASE_CLASS + '-arrow-icon', 'tgico-previous'); this.arrowBack.append(previousIcon); */ this.arrowNext = document.createElement('div'); - this.arrowNext.classList.add(PeerProfileAvatars.BASE_CLASS + '-arrow', PeerProfileAvatars.BASE_CLASS + '-arrow-next'); + this.arrowNext.classList.add(PeerProfileAvatars.BASE_CLASS + '-arrow', PeerProfileAvatars.BASE_CLASS + '-arrow-next', 'tgico-avatarnext'); /* const nextIcon = document.createElement('i'); nextIcon.classList.add(PeerProfileAvatars.BASE_CLASS + '-arrow-icon', 'tgico-next'); @@ -101,7 +101,7 @@ export default class PeerProfileAvatars { || (clickX > (rect.width * SWITCH_ZONE) && clickX < (rect.width - rect.width * SWITCH_ZONE))) { const peerId = this.peerId; - const targets: {element: HTMLElement, item: string | Message.messageService}[] = []; + const targets: {element: HTMLElement, item: Photo.photo['id'] | Message.messageService}[] = []; this.listLoader.previous.concat(this.listLoader.current, this.listLoader.next).forEach((item, idx) => { targets.push({ element: /* null */this.avatars.children[idx] as HTMLElement, @@ -199,7 +199,7 @@ export default class PeerProfileAvatars { }); } - public setPeer(peerId: number) { + public setPeer(peerId: PeerId) { this.peerId = peerId; const photo = appPeersManager.getPeerPhoto(peerId); @@ -212,8 +212,8 @@ export default class PeerProfileAvatars { loadMore: (anchor, older, loadCount) => { if(!older) return Promise.resolve({count: undefined, items: []}); - if(peerId > 0) { - const maxId: string = (anchor || listLoader.current) as any; + if(peerId.isUser()) { + const maxId: Photo.photo['id'] = (anchor || listLoader.current) as any; return appPhotosManager.getUserPhotos(peerId, maxId, loadCount).then(value => { return { count: value.count, @@ -223,7 +223,7 @@ export default class PeerProfileAvatars { } else { const promises: [Promise, ReturnType] = [] as any; if(!listLoader.current) { - promises.push(appProfileManager.getChatFull(-peerId)); + promises.push(appProfileManager.getChatFull(peerId.toChatId())); } promises.push(appMessagesManager.getSearch({ @@ -295,13 +295,13 @@ export default class PeerProfileAvatars { this.container.classList.toggle('is-single', this.tabs.childElementCount <= 1); } - public processItem = (photoId: string | Message.messageService) => { + public processItem = (photoId: Photo.photo['id'] | Message.messageService) => { const avatar = document.createElement('div'); avatar.classList.add(PeerProfileAvatars.BASE_CLASS + '-avatar'); let photo: Photo.photo; if(photoId) { - photo = typeof(photoId) === 'string' ? + photo = typeof(photoId) !== 'object' ? appPhotosManager.getPhoto(photoId) : (photoId.action as MessageAction.messageActionChannelEditPhoto).photo as Photo.photo; } diff --git a/src/components/peerTitle.ts b/src/components/peerTitle.ts index 34d6e590..357e997c 100644 --- a/src/components/peerTitle.ts +++ b/src/components/peerTitle.ts @@ -12,7 +12,7 @@ import replaceContent from "../helpers/dom/replaceContent"; import appUsersManager from "../lib/appManagers/appUsersManager"; export type PeerTitleOptions = { - peerId: number, + peerId: PeerId, plainText?: boolean, onlyFirstName?: boolean, dialog?: boolean @@ -36,7 +36,7 @@ rootScope.addEventListener('peer_title_edit', (peerId) => { export default class PeerTitle { public element: HTMLElement; - public peerId: number; + public peerId: PeerId; public plainText = false; public onlyFirstName = false; public dialog = false; @@ -61,7 +61,7 @@ export default class PeerTitle { } if(this.peerId !== rootScope.myId || !this.dialog) { - if(this.peerId > 0 && appUsersManager.getUser(this.peerId).pFlags.deleted) { + if(this.peerId.isUser() && appUsersManager.getUser(this.peerId).pFlags.deleted) { replaceContent(this.element, i18n(this.onlyFirstName ? 'Deleted' : 'HiddenName')); } else { this.element.innerHTML = appPeersManager.getPeerTitle(this.peerId, this.plainText, this.onlyFirstName); diff --git a/src/components/poll.ts b/src/components/poll.ts index 0fabc713..58afc792 100644 --- a/src/components/poll.ts +++ b/src/components/poll.ts @@ -7,7 +7,7 @@ import mediaSizes from "../helpers/mediaSizes"; import { IS_TOUCH_SUPPORTED } from "../environment/touchSupport"; import appImManager from "../lib/appManagers/appImManager"; -import appPollsManager, { Poll, PollResults } from "../lib/appManagers/appPollsManager"; +import appPollsManager from "../lib/appManagers/appPollsManager"; import serverTimeManager from "../lib/mtproto/serverTimeManager"; import { RichTextProcessor } from "../lib/richtextprocessor"; import rootScope from "../lib/rootScope"; @@ -22,6 +22,7 @@ import { cancelEvent } from "../helpers/dom/cancelEvent"; import { attachClickEvent, detachClickEvent } from "../helpers/dom/clickEvent"; import replaceContent from "../helpers/dom/replaceContent"; import windowSize from "../helpers/windowSize"; +import { Poll, PollResults } from "../layer"; let lineTotalLength = 0; const tailLength = 9; @@ -92,9 +93,7 @@ rootScope.on('poll_update', (e) => { } }); */ -rootScope.addEventListener('poll_update', (e) => { - const {poll, results} = e as {poll: Poll, results: PollResults}; - +rootScope.addEventListener('poll_update', ({poll, results}) => { const pollElements = Array.from(document.querySelectorAll(`poll-element[poll-id="${poll.id}"]`)) as PollElement[]; pollElements.forEach(pollElement => { //console.log('poll_update', poll, results); diff --git a/src/components/popups/createPoll.ts b/src/components/popups/createPoll.ts index 1709ca5d..85a8df52 100644 --- a/src/components/popups/createPoll.ts +++ b/src/components/popups/createPoll.ts @@ -4,7 +4,6 @@ * https://github.com/morethanwords/tweb/blob/master/LICENSE */ -import type { Poll } from "../../lib/appManagers/appPollsManager"; import type Chat from "../chat/chat"; import PopupElement from "."; import CheckboxField from "../checkboxField"; @@ -19,6 +18,7 @@ import getRichValue from "../../helpers/dom/getRichValue"; import isInputEmpty from "../../helpers/dom/isInputEmpty"; import whichChild from "../../helpers/dom/whichChild"; import { attachClickEvent } from "../../helpers/dom/clickEvent"; +import { Poll } from "../../layer"; const MAX_LENGTH_QUESTION = 255; const MAX_LENGTH_OPTION = 100; diff --git a/src/components/popups/deleteDialog.ts b/src/components/popups/deleteDialog.ts index 834d4cb6..1e8f09da 100644 --- a/src/components/popups/deleteDialog.ts +++ b/src/components/popups/deleteDialog.ts @@ -13,7 +13,7 @@ import PopupPeer, { PopupPeerButtonCallbackCheckboxes, PopupPeerOptions } from " export default class PopupDeleteDialog { constructor( - peerId: number, + peerId: PeerId, // actionType: 'leave' | 'delete', peerType: PeerType = appPeersManager.getDialogType(peerId), onSelect?: (promise: Promise) => void @@ -26,7 +26,7 @@ export default class PopupDeleteDialog { }; */ const callbackLeave = (checked: PopupPeerButtonCallbackCheckboxes, flush = checkboxes && !!checked.size) => { - let promise = appChatsManager.leave(-peerId); + let promise = appChatsManager.leave(peerId.toChatId()); if(flush) { promise = promise.finally(() => { @@ -40,11 +40,11 @@ export default class PopupDeleteDialog { const callbackDelete = (checked: PopupPeerButtonCallbackCheckboxes) => { let promise: Promise; - if(peerId > 0) { + if(peerId.isUser()) { promise = appMessagesManager.flushHistory(peerId, false, checkboxes ? !!checked.size : undefined); } else { if(checked.size) { - promise = appChatsManager.delete(-peerId); + promise = appChatsManager.delete(peerId.toChatId()); } else { return callbackLeave(checked); } @@ -56,7 +56,7 @@ export default class PopupDeleteDialog { let title: LangPackKey, description: LangPackKey, descriptionArgs: any[], buttons: PopupPeerOptions['buttons'], checkboxes: PopupPeerOptions['checkboxes']; switch(peerType) { case 'channel': { - if(/* actionType === 'delete' && */appChatsManager.hasRights(-peerId, 'delete_chat')) { + if(/* actionType === 'delete' && */appChatsManager.hasRights(peerId.toChatId(), 'delete_chat')) { appChatsManager.deleteChannel title = 'ChannelDeleteMenu'; description = 'AreYouSureDeleteAndExitChannel'; @@ -130,7 +130,7 @@ export default class PopupDeleteDialog { case 'megagroup': case 'group': { - if(/* actionType === 'delete' && */appChatsManager.hasRights(-peerId, 'delete_chat')) { + if(/* actionType === 'delete' && */appChatsManager.hasRights(peerId.toChatId(), 'delete_chat')) { title = 'DeleteMegaMenu'; description = 'AreYouSureDeleteAndExit'; buttons = [{ diff --git a/src/components/popups/deleteMessages.ts b/src/components/popups/deleteMessages.ts index f340fd82..cea63737 100644 --- a/src/components/popups/deleteMessages.ts +++ b/src/components/popups/deleteMessages.ts @@ -15,7 +15,7 @@ import PeerTitle from "../peerTitle"; import appPeersManager from "../../lib/appManagers/appPeersManager"; export default class PopupDeleteMessages { - constructor(peerId: number, mids: number[], type: ChatType, onConfirm?: () => void) { + constructor(peerId: PeerId, mids: number[], type: ChatType, onConfirm?: () => void) { const peerTitleElement = new PeerTitle({peerId}).element; mids = mids.slice(); @@ -51,15 +51,15 @@ export default class PopupDeleteMessages { if(peerId === rootScope.myId || type === 'scheduled') { } else { - if(peerId > 0) { + if(peerId.isUser()) { checkboxes.push({ text: 'DeleteMessagesOptionAlso', textArgs: [peerTitleElement] }); } else { - const chat = appChatsManager.getChat(-peerId); + const chat = appChatsManager.getChat(peerId.toChatId()); - const hasRights = appChatsManager.hasRights(-peerId, 'delete_messages'); + const hasRights = appChatsManager.hasRights(peerId.toChatId(), 'delete_messages'); if(chat._ === 'chat') { const canRevoke = hasRights ? mids.slice() : mids.filter(mid => { const message = appMessagesManager.getMessageByPeer(peerId, mid); diff --git a/src/components/popups/forward.ts b/src/components/popups/forward.ts index cd2b6d3b..a20a7ca2 100644 --- a/src/components/popups/forward.ts +++ b/src/components/popups/forward.ts @@ -9,8 +9,8 @@ import PopupPickUser from "./pickUser"; export default class PopupForward extends PopupPickUser { constructor( - peerIdMids: {[fromPeerId: number]: number[]}, - onSelect?: (peerId: number) => Promise | void, + peerIdMids: {[frompeerId: PeerId]: number[]}, + onSelect?: (peerId: PeerId) => Promise | void, onClose?: () => void, overrideOnSelect = false ) { diff --git a/src/components/popups/joinChatInvite.ts b/src/components/popups/joinChatInvite.ts index 7ccf8ab4..92b6f41e 100644 --- a/src/components/popups/joinChatInvite.ts +++ b/src/components/popups/joinChatInvite.ts @@ -8,9 +8,11 @@ import PopupElement, { addCancelButton } from "."; import { ChatInvite, Updates } from "../../layer"; import apiUpdatesManager from "../../lib/appManagers/apiUpdatesManager"; import appAvatarsManager from "../../lib/appManagers/appAvatarsManager"; +import appChatsManager from "../../lib/appManagers/appChatsManager"; import appPhotosManager from "../../lib/appManagers/appPhotosManager"; import { i18n } from "../../lib/langPack"; import apiManager from "../../lib/mtproto/mtprotoworker"; +import { NULL_PEER_ID } from "../../lib/mtproto/mtproto_config"; import RichTextProcessor from "../../lib/richtextprocessor"; import rootScope from "../../lib/rootScope"; import AvatarElement from "../avatar"; @@ -27,7 +29,7 @@ export default class PopupJoinChatInvite extends PopupElement { .then((updates) => { apiUpdatesManager.processUpdateMessage(updates); const chat = (updates as Updates.updates).chats[0]; - const peerId = -chat.id; + const peerId = chat.id.toPeerId(true); rootScope.dispatchEvent('history_focus', {peerId}); }); } @@ -63,7 +65,7 @@ export default class PopupJoinChatInvite extends PopupElement { }); avatarElem.style.width = avatarElem.style.height = ''; } else { - appAvatarsManager.putPhoto(avatarElem, -0, false, chatInvite.title); + appAvatarsManager.putPhoto(avatarElem, NULL_PEER_ID, false, chatInvite.title); } const title = document.createElement('div'); diff --git a/src/components/popups/peer.ts b/src/components/popups/peer.ts index 3f065211..22169cb4 100644 --- a/src/components/popups/peer.ts +++ b/src/components/popups/peer.ts @@ -14,7 +14,7 @@ export type PopupPeerButtonCallback = (checkboxes?: PopupPeerButtonCallbackCheck export type PopupPeerCheckboxOptions = CheckboxFieldOptions & {checkboxField?: CheckboxField}; export type PopupPeerOptions = PopupOptions & Partial<{ - peerId: number, + peerId: PeerId, title: string, titleLangKey?: LangPackKey, titleLangArgs?: any[], diff --git a/src/components/popups/pickUser.ts b/src/components/popups/pickUser.ts index 47021eab..8a68d616 100644 --- a/src/components/popups/pickUser.ts +++ b/src/components/popups/pickUser.ts @@ -14,7 +14,7 @@ export default class PopupPickUser extends PopupElement { constructor(options: { peerTypes: AppSelectPeers['peerType'], - onSelect?: (peerId: number) => Promise | void, + onSelect?: (peerId: PeerId) => Promise | void, onClose?: () => void, placeholder: LangPackKey, chatRightsAction?: AppSelectPeers['chatRightsAction'], @@ -29,7 +29,7 @@ export default class PopupPickUser extends PopupElement { appendTo: this.body, onChange: async() => { const selected = this.selector.getSelected(); - const peerId = selected[selected.length - 1]; + const peerId = selected[selected.length - 1].toPeerId(); if(options.onSelect) { const res = options.onSelect(peerId); diff --git a/src/components/popups/reportMessages.ts b/src/components/popups/reportMessages.ts index 9bdaca41..4552d62b 100644 --- a/src/components/popups/reportMessages.ts +++ b/src/components/popups/reportMessages.ts @@ -15,7 +15,7 @@ import PopupPeer from "./peer"; import PopupReportMessagesConfirm from "./reportMessagesConfirm"; export default class PopupReportMessages extends PopupPeer { - constructor(peerId: number, mids: number[], onConfirm?: () => void) { + constructor(peerId: PeerId, mids: number[], onConfirm?: () => void) { super('popup-report-messages', {titleLangKey: 'ChatTitle.ReportMessages', buttons: [], body: true}); mids = mids.slice(); diff --git a/src/components/popups/reportMessagesConfirm.ts b/src/components/popups/reportMessagesConfirm.ts index 25c1e515..485dbed4 100644 --- a/src/components/popups/reportMessagesConfirm.ts +++ b/src/components/popups/reportMessagesConfirm.ts @@ -14,7 +14,7 @@ import PopupPeer from "./peer"; export default class PopupReportMessagesConfirm extends PopupPeer { public static STICKER_EMOJI = '👮‍♀️'; - constructor(peerId: number, mids: number[], reason: ReportReason['_'], onConfirm?: () => void) { + constructor(peerId: PeerId, mids: number[], reason: ReportReason['_'], onConfirm?: () => void) { super('popup-report-messages-confirm', { noTitle: true, descriptionLangKey: 'ReportInfo', diff --git a/src/components/popups/sendNow.ts b/src/components/popups/sendNow.ts index 48d8e65b..2122225c 100644 --- a/src/components/popups/sendNow.ts +++ b/src/components/popups/sendNow.ts @@ -9,7 +9,7 @@ import { PopupButton } from "."; import PopupPeer from "./peer"; export default class PopupSendNow { - constructor(peerId: number, mids: number[], onConfirm?: () => void) { + constructor(peerId: PeerId, mids: number[], onConfirm?: () => void) { let title: string, description: string, buttons: PopupButton[] = []; title = `Send Message${mids.length > 1 ? 's' : ''} Now`; diff --git a/src/components/popups/unpinMessage.ts b/src/components/popups/unpinMessage.ts index cf49bca2..c7dd799e 100644 --- a/src/components/popups/unpinMessage.ts +++ b/src/components/popups/unpinMessage.ts @@ -14,7 +14,7 @@ import appChatsManager from "../../lib/appManagers/appChatsManager"; import PeerTitle from "../peerTitle"; export default class PopupPinMessage { - constructor(peerId: number, mid: number, unpin?: true, onConfirm?: () => void) { + constructor(peerId: PeerId, mid: number, unpin?: true, onConfirm?: () => void) { let title: LangPackKey, description: LangPackKey, descriptionArgs: FormatterArguments, buttons: PopupPeerOptions['buttons'] = [], checkboxes: PopupPeerOptions['checkboxes'] = []; @@ -65,13 +65,13 @@ export default class PopupPinMessage { title = 'PinMessageAlertTitle'; const pinButtonText: LangPackKey = 'PinMessage'; - if(peerId < 0) { + if(peerId.isAnyChat()) { buttons.push({ langKey: pinButtonText, callback: (checked) => callback(checked, false, !checked.size) }); - if(appChatsManager.isBroadcast(-peerId)) { + if(appChatsManager.isBroadcast(peerId.toChatId())) { description = 'PinMessageAlertChannel'; } else { description = 'PinMessageAlert'; diff --git a/src/components/privacySection.ts b/src/components/privacySection.ts index f5f3c06b..77369f4d 100644 --- a/src/components/privacySection.ts +++ b/src/components/privacySection.ts @@ -6,6 +6,7 @@ import { randomLong } from "../helpers/random"; import { InputPrivacyKey, InputPrivacyRule } from "../layer"; +import appChatsManager from "../lib/appManagers/appChatsManager"; import appPrivacyManager, { PrivacyType } from "../lib/appManagers/appPrivacyManager"; import appUsersManager from "../lib/appManagers/appUsersManager"; import { i18n, join, LangPackKey, _i18n } from "../lib/langPack"; @@ -29,8 +30,8 @@ export default class PrivacySection { clickable: true }>; public peerIds: { - disallow?: number[], - allow?: number[] + disallow?: PeerId[], + allow?: PeerId[] }; public type: PrivacyType; @@ -152,8 +153,8 @@ export default class PrivacySection { (['allow', 'disallow'] as ('allow' | 'disallow')[]).forEach(k => { const arr = []; const from = k === 'allow' ? details.allowPeers : details.disallowPeers; - arr.push(...from.users); - arr.push(...from.chats.map(id => -id)); + arr.push(...from.users.map(id => id.toPeerId())); + arr.push(...from.chats.map(id => id.toPeerId(false))); this.peerIds[k] = arr; const s = this.exceptions.get(k).row.subtitle; s.innerHTML = ''; @@ -189,12 +190,11 @@ export default class PrivacySection { return; } - const _peerIds: number[] = this.peerIds[k]; - + const _peerIds = this.peerIds[k]; if(_peerIds) { const splitted = this.splitPeersByType(_peerIds); if(splitted.chats.length) { - rules.push({_: chatKey, chats: splitted.chats.map(peerId => -peerId)}); + rules.push({_: chatKey, chats: splitted.chats.map(peerId => peerId.toChatId())}); } if(splitted.users.length) { @@ -236,16 +236,16 @@ export default class PrivacySection { row.radioField.input.checked = true; } - private splitPeersByType(peerIds: number[]) { - const peers = {users: [] as number[], chats: [] as number[]}; + private splitPeersByType(peerIds: PeerId[]) { + const peers = {users: [] as UserId[], chats: [] as ChatId[]}; peerIds.forEach(peerId => { - peers[peerId < 0 ? 'chats' : 'users'].push(peerId < 0 ? -peerId : peerId); + peers[peerId.isAnyChat() ? 'chats' : 'users'].push(peerId.isAnyChat() ? peerId.toChatId() : peerId); }); return peers; } - private generateStr(peers: {users: number[], chats: number[]}) { + private generateStr(peers: {users: UserId[], chats: ChatId[]}) { if(!peers.users.length && !peers.chats.length) { return [i18n('PrivacySettingsController.AddUsers')]; } diff --git a/src/components/sidebarLeft/index.ts b/src/components/sidebarLeft/index.ts index d736fd4b..1cc8216f 100644 --- a/src/components/sidebarLeft/index.ts +++ b/src/components/sidebarLeft/index.ts @@ -39,6 +39,7 @@ import replaceContent from "../../helpers/dom/replaceContent"; import sessionStorage from "../../lib/sessionStorage"; import { CLICK_EVENT_NAME } from "../../helpers/dom/clickEvent"; import { closeBtnMenu } from "../misc"; +import { indexOfAndSplice } from "../../helpers/array"; export const LEFT_COLUMN_ACTIVE_CLASSNAME = 'is-left-column-shown'; @@ -71,7 +72,6 @@ export class AppSidebarLeft extends SidebarSlider { const onNewGroupClick = () => { new AppAddMembersTab(this).open({ - peerId: 0, type: 'chat', skippable: false, takeOut: (peerIds) => { @@ -96,8 +96,8 @@ export class AppSidebarLeft extends SidebarSlider { new AppArchivedTab(this).open(); }, verify: () => { - const folder = appMessagesManager.dialogsStorage.getFolder(1); - return !!folder.length; + const folder = appMessagesManager.dialogsStorage.getFolderDialogs(1, false); + return !!folder.length || !appMessagesManager.dialogsStorage.isDialogsLoaded(1); } }; @@ -174,7 +174,10 @@ export class AppSidebarLeft extends SidebarSlider { icon: 'char z', text: 'ChatList.Menu.SwitchTo.Z', onClick: () => { - sessionStorage.set({kz_version: 'Z'}).then(() => { + Promise.all([ + sessionStorage.set({kz_version: 'Z'}), + sessionStorage.delete('tgme_sync') + ]).then(() => { location.href = 'https://web.telegram.org/z/'; }); }, @@ -183,7 +186,9 @@ export class AppSidebarLeft extends SidebarSlider { icon: 'char w', text: 'ChatList.Menu.SwitchTo.Webogram', onClick: () => { - location.href = 'https://web.telegram.org/?legacy=1'; + sessionStorage.delete('tgme_sync').then(() => { + location.href = 'https://web.telegram.org/?legacy=1'; + }); }, verify: () => App.isMainDomain }]; @@ -250,9 +255,13 @@ export class AppSidebarLeft extends SidebarSlider { btnArchive.element.append(this.archivedCount); - rootScope.addEventListener('dialogs_archived_unread', (e) => { - this.archivedCount.innerText = '' + formatNumber(e.count, 1); - this.archivedCount.classList.toggle('hide', !e.count); + rootScope.addEventListener('folder_unread', (folder) => { + if(folder.id === 1) { + // const count = folder.unreadMessagesCount; + const count = folder.unreadDialogsCount; + this.archivedCount.innerText = '' + formatNumber(count, 1); + this.archivedCount.classList.toggle('hide', !count); + } }); appUsersManager.getTopPeers('correspondents'); @@ -322,7 +331,7 @@ export class AppSidebarLeft extends SidebarSlider { const resetSearch = () => { searchSuper.setQuery({ - peerId: 0, + peerId: ''.toPeerId(), folderId: 0 }); searchSuper.selectTab(0); @@ -332,7 +341,7 @@ export class AppSidebarLeft extends SidebarSlider { resetSearch(); let pickedElements: HTMLElement[] = []; - let selectedPeerId = 0; + let selectedPeerId: PeerId = ''.toPeerId(); let selectedMinDate = 0; let selectedMaxDate = 0; const updatePicked = () => { @@ -361,7 +370,7 @@ export class AppSidebarLeft extends SidebarSlider { selectedMinDate = +minDate; selectedMaxDate = +maxDate; } else { - selectedPeerId = +key; + selectedPeerId = key.toPeerId(); } target.addEventListener('click', () => { @@ -376,7 +385,7 @@ export class AppSidebarLeft extends SidebarSlider { searchSuper.nav.parentElement.append(helper); - const renderEntity = (peerId: any, title?: string | HTMLElement) => { + const renderEntity = (key: PeerId | string, title?: string | HTMLElement) => { const div = document.createElement('div'); div.classList.add('selector-user'/* , 'scale-in' */); @@ -385,13 +394,13 @@ export class AppSidebarLeft extends SidebarSlider { avatarEl.setAttribute('dialog', '1'); avatarEl.classList.add('avatar-30'); - div.dataset.key = '' + peerId; - if(typeof(peerId) === 'number') { + div.dataset.key = '' + key; + if(key.isPeerId()) { if(title === undefined) { - title = new PeerTitle({peerId}).element; + title = new PeerTitle({peerId: key.toPeerId()}).element; } - avatarEl.setAttribute('peer', '' + peerId); + avatarEl.setAttribute('peer', '' + key); } else { avatarEl.classList.add('tgico-calendarfilter'); } @@ -415,11 +424,11 @@ export class AppSidebarLeft extends SidebarSlider { if(key.indexOf('date_') === 0) { selectedMinDate = selectedMaxDate = 0; } else { - selectedPeerId = 0; + selectedPeerId = ''.toPeerId(); } target.remove(); - pickedElements.findAndSplice(t => t === target); + indexOfAndSplice(pickedElements, target); setTimeout(() => { updatePicked(); @@ -452,8 +461,9 @@ export class AppSidebarLeft extends SidebarSlider { if(!selectedPeerId && value.trim()) { const middleware = searchSuper.middleware.get(); Promise.all([ - appMessagesManager.getConversationsAll(value).then(dialogs => dialogs.map(d => d.peerId)), - appUsersManager.getContacts(value, true) + // appMessagesManager.getConversationsAll(value).then(dialogs => dialogs.map(d => d.peerId)), + appMessagesManager.getConversations(value).promise.then(({dialogs}) => dialogs.map(d => d.peerId)), + appUsersManager.getContactsPeerIds(value, true) ]).then(results => { if(!middleware()) return; const peerIds = new Set(results[0].concat(results[1])); @@ -489,11 +499,11 @@ export class AppSidebarLeft extends SidebarSlider { return; } - const peerId = +target.getAttribute('data-peer-id'); + const peerId = target.getAttribute('data-peer-id').toPeerId(); appStateManager.getState().then(state => { const recentSearch = state.recentSearch || []; if(recentSearch[0] !== peerId) { - recentSearch.findAndSplice(p => p === peerId); + indexOfAndSplice(recentSearch, peerId); recentSearch.unshift(peerId); if(recentSearch.length > 20) { recentSearch.length = 20; diff --git a/src/components/sidebarLeft/tabs/activeSessions.ts b/src/components/sidebarLeft/tabs/activeSessions.ts index 3372459d..f01b9339 100644 --- a/src/components/sidebarLeft/tabs/activeSessions.ts +++ b/src/components/sidebarLeft/tabs/activeSessions.ts @@ -38,7 +38,7 @@ export default class AppActiveSessionsTab extends SliderSuperTab { titleRight: auth.pFlags.current ? undefined : formatDateAccordingToTodayNew(new Date(Math.max(auth.date_active, auth.date_created) * 1000)) }); - row.container.dataset.hash = auth.hash; + row.container.dataset.hash = '' + auth.hash; const midtitle = document.createElement('div'); midtitle.classList.add('row-midtitle'); diff --git a/src/components/sidebarLeft/tabs/addMembers.ts b/src/components/sidebarLeft/tabs/addMembers.ts index 6e020329..42219dbc 100644 --- a/src/components/sidebarLeft/tabs/addMembers.ts +++ b/src/components/sidebarLeft/tabs/addMembers.ts @@ -14,7 +14,7 @@ export default class AppAddMembersTab extends SliderSuperTab { private nextBtn: HTMLButtonElement; private selector: AppSelectPeers; private peerType: 'channel' | 'chat' | 'privacy'; - private takeOut: (peerIds: number[]) => Promise | false | void; + private takeOut: (peerIds: PeerId[]) => Promise | false | void; private skippable: boolean; protected init() { @@ -23,7 +23,7 @@ export default class AppAddMembersTab extends SliderSuperTab { this.scrollable.container.remove(); this.nextBtn.addEventListener('click', () => { - const peerIds = this.selector.getSelected(); + const peerIds = this.selector.getSelected().map(sel => sel.toPeerId()); if(this.skippable) { this.takeOut(peerIds); @@ -53,11 +53,10 @@ export default class AppAddMembersTab extends SliderSuperTab { public open(options: { title: LangPackKey, placeholder: LangPackKey, - peerId?: number, type: AppAddMembersTab['peerType'], takeOut?: AppAddMembersTab['takeOut'], skippable: boolean, - selectedPeerIds?: number[] + selectedPeerIds?: PeerId[] }) { const ret = super.open(); diff --git a/src/components/sidebarLeft/tabs/background.ts b/src/components/sidebarLeft/tabs/background.ts index f983e78c..974c39ba 100644 --- a/src/components/sidebarLeft/tabs/background.ts +++ b/src/components/sidebarLeft/tabs/background.ts @@ -35,7 +35,7 @@ export default class AppBackgroundTab extends SliderSuperTab { private grid: HTMLElement; private tempId = 0; private theme: Theme; - private clicked: Set = new Set(); + private clicked: Set = new Set(); private blurCheckboxField: CheckboxField; init() { @@ -162,7 +162,7 @@ export default class AppBackgroundTab extends SliderSuperTab { wallpaper = _wallpaper as WallPaper.wallPaper; wallpaper.document = appDocsManager.saveDoc(wallpaper.document); - container.dataset.docId = wallpaper.document.id; + container.dataset.docId = '' + wallpaper.document.id; container.dataset.slug = wallpaper.slug; this.setBackgroundDocument(wallpaper.slug, wallpaper.document).then(deferred.resolve, deferred.reject); @@ -223,7 +223,7 @@ export default class AppBackgroundTab extends SliderSuperTab { size: appPhotosManager.choosePhotoSize(wallpaper.document, 200, 200) }); - container.dataset.docId = wallpaper.document.id; + container.dataset.docId = '' + wallpaper.document.id; container.dataset.slug = wallpaper.slug; if(this.theme.background.type === 'image' && this.theme.background.slug === wallpaper.slug) { diff --git a/src/components/sidebarLeft/tabs/blockedUsers.ts b/src/components/sidebarLeft/tabs/blockedUsers.ts index 6b816874..1ee00405 100644 --- a/src/components/sidebarLeft/tabs/blockedUsers.ts +++ b/src/components/sidebarLeft/tabs/blockedUsers.ts @@ -17,7 +17,7 @@ import ButtonCorner from "../../buttonCorner"; import { attachClickEvent } from "../../../helpers/dom/clickEvent"; export default class AppBlockedUsersTab extends SliderSuperTab { - public peerIds: number[]; + public peerIds: PeerId[]; private menuElement: HTMLElement; protected init() { @@ -50,7 +50,7 @@ export default class AppBlockedUsersTab extends SliderSuperTab { this.scrollable.container.classList.add('chatlist-container'); this.scrollable.append(list); - const add = (peerId: number, append: boolean) => { + const add = (peerId: PeerId, append: boolean) => { const {dom} = appDialogsManager.addDialogNew({ dialog: peerId, container: list, @@ -78,7 +78,7 @@ export default class AppBlockedUsersTab extends SliderSuperTab { let target: HTMLElement; const onUnblock = () => { - const peerId = +target.dataset.peerId; + const peerId = target.dataset.peerId.toPeerId(); appUsersManager.toggleBlock(peerId, false); }; diff --git a/src/components/sidebarLeft/tabs/chatFolders.ts b/src/components/sidebarLeft/tabs/chatFolders.ts index b8095d69..74efbb3c 100644 --- a/src/components/sidebarLeft/tabs/chatFolders.ts +++ b/src/components/sidebarLeft/tabs/chatFolders.ts @@ -11,7 +11,6 @@ import { toast } from "../../toast"; import type { MyDialogFilter } from "../../../lib/storages/filters"; import type { DialogFilterSuggested, DialogFilter } from "../../../layer"; import type _rootScope from "../../../lib/rootScope"; -import type { BroadcastEvents } from "../../../lib/rootScope"; import Button from "../../button"; import appMessagesManager from "../../../lib/appManagers/appMessagesManager"; import appPeersManager from "../../../lib/appManagers/appPeersManager"; @@ -65,7 +64,7 @@ export default class AppChatFoldersTab extends SliderSuperTab { } if(!d.length) { - const folder = appMessagesManager.dialogsStorage.getFolder(filter.id); + const folder = appMessagesManager.dialogsStorage.getFolderDialogs(filter.id); let chats = 0, channels = 0, groups = 0; for(const dialog of folder) { if(appPeersManager.isAnyGroup(dialog.peerId)) groups++; @@ -170,8 +169,7 @@ export default class AppChatFoldersTab extends SliderSuperTab { onFiltersContainerUpdate(); }); - this.listenerSetter.add(rootScope)('filter_update', (e) => { - const filter = e; + this.listenerSetter.add(rootScope)('filter_update', (filter) => { if(this.filtersRendered.hasOwnProperty(filter.id)) { this.renderFolder(filter, null, this.filtersRendered[filter.id]); } else { @@ -183,8 +181,7 @@ export default class AppChatFoldersTab extends SliderSuperTab { this.getSuggestedFilters(); }); - this.listenerSetter.add(rootScope)('filter_delete', (e) => { - const filter = e; + this.listenerSetter.add(rootScope)('filter_delete', (filter) => { if(this.filtersRendered.hasOwnProperty(filter.id)) { /* for(const suggested of this.suggestedFilters) { if(deepEqual(suggested.filter, filter)) { @@ -200,8 +197,7 @@ export default class AppChatFoldersTab extends SliderSuperTab { onFiltersContainerUpdate(); }); - this.listenerSetter.add(rootScope)('filter_order', (e: BroadcastEvents['filter_order']) => { - const order = e; + this.listenerSetter.add(rootScope)('filter_order', (order) => { order.forEach((filterId, idx) => { const container = this.filtersRendered[filterId].container; positionElementByIndex(container, container.parentElement, idx + 1); // ! + 1 due to header diff --git a/src/components/sidebarLeft/tabs/contacts.ts b/src/components/sidebarLeft/tabs/contacts.ts index 2edba4c2..091da443 100644 --- a/src/components/sidebarLeft/tabs/contacts.ts +++ b/src/components/sidebarLeft/tabs/contacts.ts @@ -44,8 +44,9 @@ export default class AppContactsTab extends SliderSuperTab { this.listenerSetter.add(rootScope)('contacts_update', (userId) => { const isContact = appUsersManager.isContact(userId); - if(isContact) this.sortedUserList.add(userId); - else this.sortedUserList.delete(userId); + const peerId = userId.toPeerId(); + if(isContact) this.sortedUserList.add(peerId); + else this.sortedUserList.delete(peerId); }); this.title.replaceWith(this.inputSearch.container); @@ -90,7 +91,7 @@ export default class AppContactsTab extends SliderSuperTab { this.scrollable.onScrolledBottom = null; this.scrollable.container.textContent = ''; - appUsersManager.getContacts(query, undefined, 'online').then(contacts => { + appUsersManager.getContactsPeerIds(query, undefined, 'online').then(contacts => { if(!middleware()) { return; } diff --git a/src/components/sidebarLeft/tabs/editFolder.ts b/src/components/sidebarLeft/tabs/editFolder.ts index e398809d..5be328fe 100644 --- a/src/components/sidebarLeft/tabs/editFolder.ts +++ b/src/components/sidebarLeft/tabs/editFolder.ts @@ -31,8 +31,8 @@ export default class AppEditFolderTab extends SliderSuperTab { private menuBtn: HTMLElement; private nameInputField: InputField; - private include_peers: SettingSection; - private exclude_peers: SettingSection; + private includePeerIds: SettingSection; + private excludePeerIds: SettingSection; private flags: {[k in 'contacts' | 'non_contacts' | 'groups' | 'broadcasts' | 'bots' | 'exclude_muted' | 'exclude_archived' | 'exclude_read']: HTMLElement} = {} as any; private animation: RLottiePlayer; @@ -108,7 +108,7 @@ export default class AppEditFolderTab extends SliderSuperTab { return section; }; - this.include_peers = generateList('folder-list-included', 'FilterInclude', [{ + this.includePeerIds = generateList('folder-list-included', 'FilterInclude', [{ icon: 'add primary', text: 'ChatList.Filter.Include.AddChat', withRipple: true @@ -134,7 +134,7 @@ export default class AppEditFolderTab extends SliderSuperTab { name: 'bots' }], this.flags); - this.exclude_peers = generateList('folder-list-excluded', 'FilterExclude', [{ + this.excludePeerIds = generateList('folder-list-excluded', 'FilterExclude', [{ icon: 'minus primary', text: 'ChatList.Filter.Exclude.AddChat', withRipple: true @@ -152,10 +152,10 @@ export default class AppEditFolderTab extends SliderSuperTab { name: 'exclude_read' }], this.flags); - this.scrollable.append(this.stickerContainer, this.caption, inputWrapper, this.include_peers.container, this.exclude_peers.container); + this.scrollable.append(this.stickerContainer, this.caption, inputWrapper, this.includePeerIds.container, this.excludePeerIds.container); - const includedFlagsContainer = this.include_peers.container.querySelector('.folder-categories'); - const excludedFlagsContainer = this.exclude_peers.container.querySelector('.folder-categories'); + const includedFlagsContainer = this.includePeerIds.container.querySelector('.folder-categories'); + const excludedFlagsContainer = this.excludePeerIds.container.querySelector('.folder-categories'); includedFlagsContainer.querySelector('.btn').addEventListener('click', () => { new AppIncludedChatsTab(this.slider).open(this.filter, 'included', this); @@ -261,7 +261,7 @@ export default class AppEditFolderTab extends SliderSuperTab { this.flags[flag as keyof AppEditFolderTab['flags']].style.display = !!filter.pFlags[flag as keyof AppEditFolderTab['flags']] ? '' : 'none'; } - (['include_peers', 'exclude_peers'] as ['include_peers', 'exclude_peers']).forEach(key => { + (['includePeerIds' as const, 'excludePeerIds' as const]).forEach(key => { const section = this[key]; const ul = appDialogsManager.createChatList(); @@ -339,7 +339,10 @@ export default class AppEditFolderTab extends SliderSuperTab { pFlags: {}, pinned_peers: [], include_peers: [], - exclude_peers: [] + exclude_peers: [], + pinnedPeerIds: [], + includePeerIds: [], + excludePeerIds: [] }, true); this.type = 'create'; this.onCreateOpen(); diff --git a/src/components/sidebarLeft/tabs/editProfile.ts b/src/components/sidebarLeft/tabs/editProfile.ts index 29f283f7..7fecf293 100644 --- a/src/components/sidebarLeft/tabs/editProfile.ts +++ b/src/components/sidebarLeft/tabs/editProfile.ts @@ -12,6 +12,7 @@ import EditPeer from "../../editPeer"; import { UsernameInputField } from "../../usernameInputField"; import { i18n, i18n_ } from "../../../lib/langPack"; import { attachClickEvent } from "../../../helpers/dom/clickEvent"; +import rootScope from "../../../lib/rootScope"; // TODO: аватарка не поменяется в этой вкладке после изменения почему-то (если поставить в другом клиенте, и потом тут проверить, для этого ещё вышел в чатлист) @@ -65,7 +66,7 @@ export default class AppEditProfileTab extends SliderSuperTab { this.scrollable.append(document.createElement('hr')); this.editPeer = new EditPeer({ - peerId: appUsersManager.getSelf().id, + peerId: rootScope.myId, inputFields, listenerSetter: this.listenerSetter }); @@ -81,7 +82,6 @@ export default class AppEditProfileTab extends SliderSuperTab { inputWrapper.classList.add('input-wrapper'); this.usernameInputField = new UsernameInputField({ - peerId: 0, label: 'EditProfile.Username.Label', name: 'username', plainText: true, diff --git a/src/components/sidebarLeft/tabs/includedChats.ts b/src/components/sidebarLeft/tabs/includedChats.ts index 5652ed46..8835ed12 100644 --- a/src/components/sidebarLeft/tabs/includedChats.ts +++ b/src/components/sidebarLeft/tabs/includedChats.ts @@ -19,6 +19,8 @@ import appMessagesManager from "../../../lib/appManagers/appMessagesManager"; import RichTextProcessor from "../../../lib/richtextprocessor"; import { SettingSection } from ".."; import { toast } from "../../toast"; +import { forEachReverse } from "../../../helpers/array"; +import appPeersManager from "../../../lib/appManagers/appPeersManager"; export default class AppIncludedChatsTab extends SliderSuperTab { private editFolderTab: AppEditFolderTab; @@ -29,7 +31,7 @@ export default class AppIncludedChatsTab extends SliderSuperTab { private filter: DialogFilter; private originalFilter: DialogFilter; - private dialogsByFilters: Map>; + private dialogsByFilters: Map>; protected init() { this.content.remove(); @@ -64,39 +66,41 @@ export default class AppIncludedChatsTab extends SliderSuperTab { } } - const peers: number[] = []; + const peerIds: PeerId[] = []; for(const key of selected) { - if(typeof(key) === 'number') { - peers.push(key); + if(key.isPeerId()) { + peerIds.push(key.toPeerId()); } else { // @ts-ignore this.filter.pFlags[key] = true; } } + let cmp: (peerId: PeerId) => boolean; if(this.type === 'included') { - this.filter.pinned_peers = this.filter.pinned_peers.filter(peerId => { - return peers.includes(peerId); // * because I have pinned peer in include_peers too - /* const index = peers.indexOf(peerId); - if(index !== -1) { - peers.splice(index, 1); - return true; - } else { - return false; - } */ - }); + cmp = (peerId) => peerIds.includes(peerId); } else { - this.filter.pinned_peers = this.filter.pinned_peers.filter(peerId => { - return !peers.includes(peerId); - }); + cmp = (peerId) => !peerIds.includes(peerId); } - const other = this.type === 'included' ? 'exclude_peers' : 'include_peers'; - this.filter[other] = this.filter[other].filter(peerId => { - return !peers.includes(peerId); + forEachReverse(this.filter.pinnedPeerIds, (peerId, idx) => { + if(!cmp(peerId)) { + this.filter.pinnedPeerIds.splice(idx, 1); + this.filter.pinned_peers.splice(idx, 1); + } + }); + + const other = this.type === 'included' ? 'excludePeerIds' : 'includePeerIds'; + const otherLegacy = this.type === 'included' ? 'exclude_peers' : 'include_peers'; + forEachReverse(this.filter[other], (peerId, idx) => { + if(peerIds.includes(peerId)) { + this.filter[other].splice(idx, 1); + this.filter[otherLegacy].splice(idx, 1); + } }); - this.filter[this.type === 'included' ? 'include_peers' : 'exclude_peers'] = peers; + this.filter[this.type === 'included' ? 'includePeerIds' : 'excludePeerIds'] = peerIds; + this.filter[this.type === 'included' ? 'include_peers' : 'exclude_peers'] = peerIds.map(peerId => appPeersManager.getInputPeerById(peerId)); //this.filter.pinned_peers = this.filter.pinned_peers.filter(peerId => this.filter.include_peers.includes(peerId)); this.editFolderTab.setFilter(this.filter, false); @@ -106,7 +110,7 @@ export default class AppIncludedChatsTab extends SliderSuperTab { this.dialogsByFilters = new Map(); return appMessagesManager.filtersStorage.getDialogFilters().then(filters => { for(const filter of filters) { - this.dialogsByFilters.set(filter, new Set(appMessagesManager.dialogsStorage.getFolder(filter.id).map(d => d.peerId))); + this.dialogsByFilters.set(filter, new Set(appMessagesManager.dialogsStorage.getFolderDialogs(filter.id).map(d => d.peerId))); } }); } @@ -122,7 +126,7 @@ export default class AppIncludedChatsTab extends SliderSuperTab { return checkboxField.label; } - renderResults = async(peerIds: number[]) => { + renderResults = async(peerIds: PeerId[]) => { //const other = this.type === 'included' ? this.filter.exclude_peers : this.filter.include_peers; await appUsersManager.getContacts(); @@ -211,7 +215,7 @@ export default class AppIncludedChatsTab extends SliderSuperTab { ///////////////// - const selectedPeers = (this.type === 'included' ? filter.include_peers : filter.exclude_peers).slice(); + const selectedPeers = (this.type === 'included' ? filter.includePeerIds : filter.excludePeerIds).slice(); this.selector = new AppSelectPeers({ appendTo: this.container, diff --git a/src/components/sidebarLeft/tabs/newChannel.ts b/src/components/sidebarLeft/tabs/newChannel.ts index 2d8a5c58..1274a6f5 100644 --- a/src/components/sidebarLeft/tabs/newChannel.ts +++ b/src/components/sidebarLeft/tabs/newChannel.ts @@ -75,13 +75,12 @@ export default class AppNewChannelTab extends SliderSuperTab { appSidebarLeft.removeTabFromHistory(this); new AppAddMembersTab(this.slider).open({ - peerId: channelId, type: 'channel', skippable: true, title: 'GroupAddMembers', placeholder: 'SendMessageTo', takeOut: (peerIds) => { - return appChatsManager.inviteToChannel(Math.abs(channelId), peerIds); + return appChatsManager.inviteToChannel(channelId, peerIds); } }); }); diff --git a/src/components/sidebarLeft/tabs/newGroup.ts b/src/components/sidebarLeft/tabs/newGroup.ts index 77ff3458..3ade5d00 100644 --- a/src/components/sidebarLeft/tabs/newGroup.ts +++ b/src/components/sidebarLeft/tabs/newGroup.ts @@ -20,7 +20,7 @@ export default class AppNewGroupTab extends SliderSuperTab { private searchGroup = new SearchGroup(true, 'contacts', true, 'new-group-members disable-hover', false); private avatarEdit: AvatarEdit; private uploadAvatar: () => Promise = null; - private userIds: number[]; + private peerIds: PeerId[]; private nextBtn: HTMLButtonElement; private groupNameInputField: InputField; @@ -53,7 +53,7 @@ export default class AppNewGroupTab extends SliderSuperTab { const title = this.groupNameInputField.value; this.nextBtn.disabled = true; - appChatsManager.createChat(title, this.userIds).then((chatId) => { + appChatsManager.createChat(title, this.peerIds).then((chatId) => { if(this.uploadAvatar) { this.uploadAvatar().then((inputFile) => { appChatsManager.editPhoto(chatId, inputFile); @@ -81,12 +81,12 @@ export default class AppNewGroupTab extends SliderSuperTab { this.nextBtn.disabled = false; } - public open(userIds: number[]) { + public open(userIds: PeerId[]) { const result = super.open(); result.then(() => { - this.userIds = userIds; + this.peerIds = userIds; - this.userIds.forEach(userId => { + this.peerIds.forEach(userId => { let {dom} = appDialogsManager.addDialogNew({ dialog: userId, container: this.searchGroup.list, @@ -99,7 +99,7 @@ export default class AppNewGroupTab extends SliderSuperTab { }); this.searchGroup.nameEl.textContent = ''; - this.searchGroup.nameEl.append(i18n('Members', [this.userIds.length])); + this.searchGroup.nameEl.append(i18n('Members', [this.peerIds.length])); this.searchGroup.setActive(); }); diff --git a/src/components/sidebarLeft/tabs/privacyAndSecurity.ts b/src/components/sidebarLeft/tabs/privacyAndSecurity.ts index c6242a83..c86b5e4f 100644 --- a/src/components/sidebarLeft/tabs/privacyAndSecurity.ts +++ b/src/components/sidebarLeft/tabs/privacyAndSecurity.ts @@ -46,7 +46,7 @@ export default class AppPrivacyAndSecurityTab extends SliderSuperTabEventable { { const section = new SettingSection({noDelimiter: true}); - let blockedPeerIds: number[]; + let blockedPeerIds: PeerId[]; const blockedUsersRow = new Row({ icon: 'deleteuser', titleLangKey: 'BlockedUsers', diff --git a/src/components/sidebarLeft/tabs/settings.ts b/src/components/sidebarLeft/tabs/settings.ts index d8d216ad..05a705c2 100644 --- a/src/components/sidebarLeft/tabs/settings.ts +++ b/src/components/sidebarLeft/tabs/settings.ts @@ -18,6 +18,7 @@ import AppNotificationsTab from "./notifications"; import PeerTitle from "../../peerTitle"; import AppLanguageTab from "./language"; import lottieLoader from "../../../lib/lottieLoader"; +import PopupPeer from "../../popups/peer"; //import AppMediaViewer from "../../appMediaViewerNew"; export default class AppSettingsTab extends SliderSuperTab { @@ -42,7 +43,17 @@ export default class AppSettingsTab extends SliderSuperTab { icon: 'logout', text: 'EditAccount.Logout', onClick: () => { - apiManager.logOut(); + new PopupPeer('logout', { + titleLangKey: 'LogOut', + descriptionLangKey: 'LogOut.Description', + buttons: [{ + langKey: 'LogOut', + callback: () => { + apiManager.logOut(); + }, + isDanger: true + }] + }).show(); } }]); @@ -149,10 +160,11 @@ export default class AppSettingsTab extends SliderSuperTab { } public fillElements() { - let user = appUsersManager.getSelf(); - this.avatarElem.setAttribute('peer', '' + user.id); + const user = appUsersManager.getSelf(); + const peerId = user.id.toPeerId(false); + this.avatarElem.setAttribute('peer', '' + peerId); - this.nameDiv.append(new PeerTitle({peerId: user.id}).element); + this.nameDiv.append(new PeerTitle({peerId: peerId}).element); this.phoneDiv.innerHTML = user.phone ? appUsersManager.formatUserPhone(user.phone) : ''; } } diff --git a/src/components/sidebarRight/tabs/chatType.ts b/src/components/sidebarRight/tabs/chatType.ts index 8c4a9ed0..4c4e6844 100644 --- a/src/components/sidebarRight/tabs/chatType.ts +++ b/src/components/sidebarRight/tabs/chatType.ts @@ -24,7 +24,7 @@ import { attachClickEvent } from "../../../helpers/dom/clickEvent"; import toggleDisability from "../../../helpers/dom/toggleDisability"; export default class AppChatTypeTab extends SliderSuperTabEventable { - public chatId: number; + public chatId: ChatId; public chatFull: ChatFull; protected init() { @@ -130,7 +130,7 @@ export default class AppChatTypeTab extends SliderSuperTabEventable { invalidText: 'Link.Invalid', takenText: 'Link.Taken', onChange: onChange, - peerId: -this.chatId, + peerId: this.chatId.toPeerId(true), head: placeholder }); diff --git a/src/components/sidebarRight/tabs/editChat.ts b/src/components/sidebarRight/tabs/editChat.ts index 6f656da7..c381b395 100644 --- a/src/components/sidebarRight/tabs/editChat.ts +++ b/src/components/sidebarRight/tabs/editChat.ts @@ -18,7 +18,6 @@ import rootScope from "../../../lib/rootScope"; import AppGroupPermissionsTab from "./groupPermissions"; import { i18n, LangPackKey } from "../../../lib/langPack"; import PopupDeleteDialog from "../../popups/deleteDialog"; -import PopupPeer from "../../popups/peer"; import { attachClickEvent } from "../../../helpers/dom/clickEvent"; import toggleDisability from "../../../helpers/dom/toggleDisability"; import CheckboxField from "../../checkboxField"; @@ -27,7 +26,7 @@ export default class AppEditChatTab extends SliderSuperTab { private chatNameInputField: InputField; private descriptionInputField: InputField; private editPeer: EditPeer; - public chatId: number; + public chatId: ChatId; protected async _init() { // * cleanup prev @@ -54,6 +53,8 @@ export default class AppEditChatTab extends SliderSuperTab { } }); + const peerId = this.chatId.toPeerId(true); + { const section = new SettingSection({noDelimiter: true}); const inputFields: InputField[] = []; @@ -81,7 +82,7 @@ export default class AppEditChatTab extends SliderSuperTab { inputFields.push(this.chatNameInputField, this.descriptionInputField); this.editPeer = new EditPeer({ - peerId: -this.chatId, + peerId, inputFields, listenerSetter: this.listenerSetter }); @@ -283,7 +284,7 @@ export default class AppEditChatTab extends SliderSuperTab { const btnDelete = Button('btn-primary btn-transparent danger', {icon: 'delete', text: isBroadcast ? 'PeerInfo.DeleteChannel' : 'DeleteAndExitButton'}); attachClickEvent(btnDelete, () => { - new PopupDeleteDialog(-this.chatId/* , 'delete' */, undefined, (promise) => { + new PopupDeleteDialog(peerId/* , 'delete' */, undefined, (promise) => { const toggle = toggleDisability([btnDelete], true); promise.then(() => { this.close(); @@ -301,8 +302,8 @@ export default class AppEditChatTab extends SliderSuperTab { if(!isChannel) { // ! this one will fire earlier than tab's closeAfterTimeout (destroy) event and listeners will be erased, so destroy won't fire this.listenerSetter.add(rootScope)('dialog_migrate', ({migrateFrom, migrateTo}) => { - if(-this.chatId === migrateFrom) { - this.chatId = -migrateTo; + if(peerId === migrateFrom) { + this.chatId = migrateTo.toChatId(); this._init(); } }); diff --git a/src/components/sidebarRight/tabs/editContact.ts b/src/components/sidebarRight/tabs/editContact.ts index 46b4598c..c1b0c1a5 100644 --- a/src/components/sidebarRight/tabs/editContact.ts +++ b/src/components/sidebarRight/tabs/editContact.ts @@ -27,7 +27,7 @@ export default class AppEditContactTab extends SliderSuperTab { private nameInputField: InputField; private lastNameInputField: InputField; private editPeer: EditPeer; - public peerId: number; + public peerId: PeerId; protected init() { this.container.classList.add('edit-peer-container', 'edit-contact-container'); diff --git a/src/components/sidebarRight/tabs/forward.ts b/src/components/sidebarRight/tabs/forward.ts index 72bc4f63..cb6d2d27 100644 --- a/src/components/sidebarRight/tabs/forward.ts +++ b/src/components/sidebarRight/tabs/forward.ts @@ -6,6 +6,7 @@ import appSidebarRight from ".."; import appMessagesManager from "../../../lib/appManagers/appMessagesManager"; +import { NULL_PEER_ID } from "../../../lib/mtproto/mtproto_config"; import AppSelectPeers from "../../appSelectPeers"; import { putPreloader } from "../../misc"; import { SliderTab } from "../../slider"; @@ -41,7 +42,7 @@ export default class AppForwardTab implements SliderTab { this.sendBtn = this.container.querySelector('.btn-circle') as HTMLButtonElement; this.sendBtn.addEventListener('click', () => { - let peerIds = this.selector.getSelected(); + let peerIds = this.selector.getSelected().map(s => s.toPeerId()); if(this.mids.length && peerIds.length) { this.sendBtn.classList.remove('tgico-send'); @@ -51,7 +52,7 @@ export default class AppForwardTab implements SliderTab { let s = () => { let promises = peerIds.splice(0, 3).map(peerId => { - return appMessagesManager.forwardMessages(peerId, 0, this.mids); + return appMessagesManager.forwardMessages(peerId, NULL_PEER_ID, this.mids); }); Promise.all(promises).then(() => { diff --git a/src/components/sidebarRight/tabs/gifs.ts b/src/components/sidebarRight/tabs/gifs.ts index a9323e90..77e9ac57 100644 --- a/src/components/sidebarRight/tabs/gifs.ts +++ b/src/components/sidebarRight/tabs/gifs.ts @@ -16,6 +16,7 @@ import type { MyDocument } from "../../../lib/appManagers/appDocsManager"; import mediaSizes from "../../../helpers/mediaSizes"; import findUpClassName from "../../../helpers/dom/findUpClassName"; import { attachClickEvent } from "../../../helpers/dom/clickEvent"; +import { NULL_PEER_ID } from "../../../lib/mtproto/mtproto_config"; const ANIMATIONGROUP = 'GIFS-SEARCH'; @@ -26,7 +27,7 @@ export default class AppGifsTab extends SliderSuperTab { private nextOffset = ''; private loadedAll = false; - private gifBotPeerId: number; + private gifBotPeerId: PeerId; private masonry: GifsMasonry; private searchPromise: ReturnType; @@ -100,11 +101,11 @@ export default class AppGifsTab extends SliderSuperTab { if(this.searchPromise || this.loadedAll) return; if(!this.gifBotPeerId) { - this.gifBotPeerId = (await appUsersManager.resolveUsername('gif')).id; + this.gifBotPeerId = (await appUsersManager.resolveUsername('gif')).id.toPeerId(false); } try { - this.searchPromise = appInlineBotsManager.getInlineResults(0, this.gifBotPeerId, query, this.nextOffset); + this.searchPromise = appInlineBotsManager.getInlineResults(NULL_PEER_ID, this.gifBotPeerId, query, this.nextOffset); const { results, next_offset } = await this.searchPromise; if(this.inputSearch.value !== query) { diff --git a/src/components/sidebarRight/tabs/groupPermissions.ts b/src/components/sidebarRight/tabs/groupPermissions.ts index f9eaeea5..2f70977e 100644 --- a/src/components/sidebarRight/tabs/groupPermissions.ts +++ b/src/components/sidebarRight/tabs/groupPermissions.ts @@ -34,7 +34,7 @@ export class ChatPermissions { private toggleWith: Partial<{[chatRight in ChatRights]: ChatRights[]}>; constructor(options: { - chatId: number, + chatId: ChatId, listenerSetter: ListenerSetter, appendTo: HTMLElement, participant?: ChannelParticipant.channelParticipantBanned @@ -123,7 +123,7 @@ export class ChatPermissions { } export default class AppGroupPermissionsTab extends SliderSuperTabEventable { - public chatId: number; + public chatId: ChatId; protected async init() { this.container.classList.add('edit-peer-container', 'group-permissions-container'); @@ -171,7 +171,7 @@ export default class AppGroupPermissionsTab extends SliderSuperTabEventable { } }); - const openPermissions = async(peerId: number) => { + const openPermissions = async(peerId: PeerId) => { let participant: AppUserPermissionsTab['participant']; try { participant = await appProfileManager.getChannelParticipant(this.chatId, peerId) as any; @@ -208,7 +208,7 @@ export default class AppGroupPermissionsTab extends SliderSuperTabEventable { const target = findUpTag(e.target, 'LI'); if(!target) return; - const peerId = +target.dataset.peerId; + const peerId = target.dataset.peerId.toPeerId(); openPermissions(peerId); }, {listenerSetter: this.listenerSetter}); diff --git a/src/components/sidebarRight/tabs/pollResults.ts b/src/components/sidebarRight/tabs/pollResults.ts index 32acd511..1209b4e3 100644 --- a/src/components/sidebarRight/tabs/pollResults.ts +++ b/src/components/sidebarRight/tabs/pollResults.ts @@ -77,7 +77,7 @@ export default class AppPollResultsTab extends SliderSuperTab { appPollsManager.getVotes(message, answer.option, offset, limit).then(votesList => { votesList.votes.forEach(vote => { const {dom} = appDialogsManager.addDialogNew({ - dialog: vote.user_id, + dialog: vote.user_id.toPeerId(false), container: list, drawStatus: false, rippleEnabled: false, diff --git a/src/components/sidebarRight/tabs/search.ts b/src/components/sidebarRight/tabs/search.ts index 1a4093a6..1d02666c 100644 --- a/src/components/sidebarRight/tabs/search.ts +++ b/src/components/sidebarRight/tabs/search.ts @@ -17,7 +17,7 @@ export default class AppPrivateSearchTab extends SliderSuperTab { private appSearch: AppSearch; private btnPickDate: HTMLElement; - private peerId = 0; + private peerId: PeerId; private threadId = 0; private query = ''; private onDatePick: (timestamp: number) => void; @@ -43,7 +43,7 @@ export default class AppPrivateSearchTab extends SliderSuperTab { }); } - open(peerId: number, threadId?: number, onDatePick?: AppPrivateSearchTab['onDatePick'], query?: string) { + open(peerId: PeerId, threadId?: number, onDatePick?: AppPrivateSearchTab['onDatePick'], query?: string) { const ret = super.open(); if(!this.peerId) { diff --git a/src/components/sidebarRight/tabs/sharedMedia.ts b/src/components/sidebarRight/tabs/sharedMedia.ts index e3195837..4c5e9cea 100644 --- a/src/components/sidebarRight/tabs/sharedMedia.ts +++ b/src/components/sidebarRight/tabs/sharedMedia.ts @@ -29,12 +29,12 @@ import PeerProfile from "../../peerProfile"; export default class AppSharedMediaTab extends SliderSuperTab { private editBtn: HTMLElement; - private peerId = 0; + private peerId: PeerId; private threadId = 0; private historiesStorage: { - [peerId: number]: Partial<{ - [type in SearchSuperType]: {mid: number, peerId: number}[] + [peerId: PeerId]: Partial<{ + [type in SearchSuperType]: {mid: number, peerId: PeerId}[] }> } = {}; @@ -124,7 +124,7 @@ export default class AppSharedMediaTab extends SliderSuperTab { attachClickEvent(this.editBtn, (e) => { let tab: AppEditChatTab | AppEditContactTab; - if(this.peerId < 0) { + if(this.peerId.isAnyChat()) { tab = new AppEditChatTab(this.slider); } else { tab = new AppEditContactTab(this.slider); @@ -132,7 +132,7 @@ export default class AppSharedMediaTab extends SliderSuperTab { if(tab) { if(tab instanceof AppEditChatTab) { - tab.chatId = -this.peerId; + tab.chatId = this.peerId.toChatId(); } else { tab.peerId = this.peerId; } @@ -148,14 +148,14 @@ export default class AppSharedMediaTab extends SliderSuperTab { }); rootScope.addEventListener('chat_update', (chatId) => { - if(this.peerId === -chatId) { + if(this.peerId === chatId.toPeerId(true)) { this.toggleEditBtn(); } }); rootScope.addEventListener('history_multiappend', (msgIdsByPeer) => { for(const peerId in msgIdsByPeer) { - this.renderNewMessages(+peerId, Array.from(msgIdsByPeer[peerId])); + this.renderNewMessages(peerId.toPeerId(), Array.from(msgIdsByPeer[peerId])); } }); @@ -211,10 +211,11 @@ export default class AppSharedMediaTab extends SliderSuperTab { this.content.append(btnAddMembers); btnAddMembers.addEventListener('click', () => { - const id = -this.peerId; + const peerId = this.peerId; + const id = this.peerId.toChatId(); const isChannel = appChatsManager.isChannel(id); - const showConfirmation = (peerIds: number[], callback: (checked: PopupPeerButtonCallbackCheckboxes) => void) => { + const showConfirmation = (peerIds: PeerId[], callback: (checked: PopupPeerButtonCallbackCheckboxes) => void) => { let titleLangKey: LangPackKey, titleLangArgs: any[], descriptionLangKey: LangPackKey, descriptionLangArgs: any[], checkboxes: PopupPeerCheckboxOptions[]; @@ -254,11 +255,11 @@ export default class AppSharedMediaTab extends SliderSuperTab { } descriptionLangArgs.push(new PeerTitle({ - peerId: -id + peerId }).element); new PopupPeer('popup-add-members', { - peerId: -id, + peerId, titleLangKey, descriptionLangKey, descriptionLangArgs, @@ -279,7 +280,6 @@ export default class AppSharedMediaTab extends SliderSuperTab { if(isChannel) { const tab = new AppAddMembersTab(this.slider); tab.open({ - peerId: this.peerId, type: 'channel', skippable: false, takeOut: (peerIds) => { @@ -313,7 +313,7 @@ export default class AppSharedMediaTab extends SliderSuperTab { //console.log('construct shared media time:', performance.now() - perf); } - public renderNewMessages(peerId: number, mids: number[]) { + public renderNewMessages(peerId: PeerId, mids: number[]) { if(this.init) return; // * not inited yet if(!this.historiesStorage[peerId]) return; @@ -336,7 +336,7 @@ export default class AppSharedMediaTab extends SliderSuperTab { } } - public deleteDeletedMessages(peerId: number, mids: number[]) { + public deleteDeletedMessages(peerId: PeerId, mids: number[]) { if(this.init) return; // * not inited yet if(!this.historiesStorage[peerId]) return; @@ -384,7 +384,7 @@ export default class AppSharedMediaTab extends SliderSuperTab { this.searchSuper.cleanupHTML(true); - this.container.classList.toggle('can-add-members', this.searchSuper.canViewMembers() && appChatsManager.hasRights(-this.peerId, 'invite_users')); + this.container.classList.toggle('can-add-members', this.searchSuper.canViewMembers() && appChatsManager.hasRights(this.peerId.toChatId(), 'invite_users')); // console.log('cleanupHTML shared media time:', performance.now() - perf); } @@ -393,7 +393,7 @@ export default class AppSharedMediaTab extends SliderSuperTab { this.searchSuper.loadMutex = promise; } - public setPeer(peerId: number, threadId = 0) { + public setPeer(peerId: PeerId, threadId = 0) { if(this.peerId === peerId && this.threadId === threadId) return false; this.peerId = peerId; @@ -432,10 +432,10 @@ export default class AppSharedMediaTab extends SliderSuperTab { private toggleEditBtn() { let show: boolean; - if(this.peerId > 0) { + if(this.peerId.isUser()) { show = this.peerId !== rootScope.myId && appUsersManager.isContact(this.peerId); } else { - show = appChatsManager.hasRights(-this.peerId, 'change_info'); + show = appChatsManager.hasRights(this.peerId.toChatId(), 'change_info'); } this.editBtn.classList.toggle('hide', !show); diff --git a/src/components/sidebarRight/tabs/stickers.ts b/src/components/sidebarRight/tabs/stickers.ts index e50d418c..54508abf 100644 --- a/src/components/sidebarRight/tabs/stickers.ts +++ b/src/components/sidebarRight/tabs/stickers.ts @@ -181,8 +181,8 @@ export default class AppStickersTab extends SliderSuperTab { div.addEventListener('mouseover', onMouseOver, {once: true}); */ - div.dataset.stickerSet = set.id; - div.dataset.access_hash = set.access_hash; + div.dataset.stickerSet = '' + set.id; + div.dataset.access_hash = '' + set.access_hash; div.dataset.title = set.title; div.append(header, stickersDiv); diff --git a/src/components/sidebarRight/tabs/userPermissions.ts b/src/components/sidebarRight/tabs/userPermissions.ts index 8db5f6bf..1187cf26 100644 --- a/src/components/sidebarRight/tabs/userPermissions.ts +++ b/src/components/sidebarRight/tabs/userPermissions.ts @@ -18,8 +18,8 @@ import { ChatPermissions } from "./groupPermissions"; export default class AppUserPermissionsTab extends SliderSuperTabEventable { public participant: ChannelParticipant; - public chatId: number; - public userId: number; + public chatId: ChatId; + public userId: UserId; protected init() { this.container.classList.add('edit-peer-container', 'user-permissions-container'); @@ -40,7 +40,7 @@ export default class AppUserPermissionsTab extends SliderSuperTabEventable { div.append(list); const {dom} = appDialogsManager.addDialogNew({ - dialog: this.userId, + dialog: this.userId.toPeerId(false), container: list, drawStatus: false, rippleEnabled: true, diff --git a/src/components/slider.ts b/src/components/slider.ts index 8773c909..d735903c 100644 --- a/src/components/slider.ts +++ b/src/components/slider.ts @@ -10,6 +10,7 @@ import appNavigationController, { NavigationItem } from "./appNavigationControll import SliderSuperTab, { SliderSuperTabConstructable, SliderTab } from "./sliderTab"; import { safeAssign } from "../helpers/object"; import { attachClickEvent } from "../helpers/dom/clickEvent"; +import { indexOfAndSplice } from "../helpers/array"; const TRANSITION_TIME = 250; @@ -110,7 +111,7 @@ export default class SidebarSlider { } public removeTabFromHistory(id: number | SliderSuperTab) { - this.historyTabIds.findAndSplice(i => i === id); + indexOfAndSplice(this.historyTabIds, id); this.onCloseTab(id, undefined); } diff --git a/src/components/swipeHandler.ts b/src/components/swipeHandler.ts index e6144073..6309de5a 100644 --- a/src/components/swipeHandler.ts +++ b/src/components/swipeHandler.ts @@ -20,6 +20,17 @@ rootScope.addEventListener('context_menu_toggle', (visible) => { RESET_GLOBAL = visible; }); +export type SwipeHandlerOptions = { + element: SwipeHandler['element'], + onSwipe: SwipeHandler['onSwipe'], + verifyTouchTarget?: SwipeHandler['verifyTouchTarget'], + onFirstSwipe?: SwipeHandler['onFirstSwipe'], + onReset?: SwipeHandler['onReset'], + cursor?: SwipeHandler['cursor'], + cancelEvent?: SwipeHandler['cancelEvent'], + listenerOptions?: SwipeHandler['listenerOptions'] +}; + export default class SwipeHandler { private element: HTMLElement; private onSwipe: (xDiff: number, yDiff: number, e: TouchEvent | MouseEvent) => boolean | void; @@ -28,20 +39,13 @@ export default class SwipeHandler { private onReset: () => void; private cursor: 'grabbing' | 'move' = 'grabbing'; private cancelEvent = true; + private listenerOptions: boolean | AddEventListenerOptions = false; private hadMove = false; private xDown: number = null; private yDown: number = null; - constructor(options: { - element: SwipeHandler['element'], - onSwipe: SwipeHandler['onSwipe'], - verifyTouchTarget?: SwipeHandler['verifyTouchTarget'], - onFirstSwipe?: SwipeHandler['onFirstSwipe'], - onReset?: SwipeHandler['onReset'], - cursor?: SwipeHandler['cursor'], - cancelEvent?: SwipeHandler['cancelEvent'] - }) { + constructor(options: SwipeHandlerOptions) { safeAssign(this, options); this.setListeners(); @@ -49,20 +53,20 @@ export default class SwipeHandler { public setListeners() { if(!IS_TOUCH_SUPPORTED) { - this.element.addEventListener('mousedown', this.handleStart, false); + this.element.addEventListener('mousedown', this.handleStart, this.listenerOptions); attachGlobalListenerTo.addEventListener('mouseup', this.reset); } else { - this.element.addEventListener('touchstart', this.handleStart, false); + this.element.addEventListener('touchstart', this.handleStart, this.listenerOptions); attachGlobalListenerTo.addEventListener('touchend', this.reset); } } public removeListeners() { if(!IS_TOUCH_SUPPORTED) { - this.element.removeEventListener('mousedown', this.handleStart, false); + this.element.removeEventListener('mousedown', this.handleStart, this.listenerOptions); attachGlobalListenerTo.removeEventListener('mouseup', this.reset); } else { - this.element.removeEventListener('touchstart', this.handleStart, false); + this.element.removeEventListener('touchstart', this.handleStart, this.listenerOptions); attachGlobalListenerTo.removeEventListener('touchend', this.reset); } } diff --git a/src/components/usernameInputField.ts b/src/components/usernameInputField.ts index b3d763cc..f89bbb96 100644 --- a/src/components/usernameInputField.ts +++ b/src/components/usernameInputField.ts @@ -16,7 +16,7 @@ export class UsernameInputField extends InputField { private checkUsernamePromise: Promise; private checkUsernameDebounced: (username: string) => void; public options: InputFieldOptions & { - peerId: number, + peerId?: PeerId, listenerSetter: ListenerSetter, onChange?: () => void, invalidText: LangPackKey, @@ -68,7 +68,7 @@ export class UsernameInputField extends InputField { if(this.options.peerId) { this.checkUsernamePromise = apiManager.invokeApi('channels.checkUsername', { - channel: appChatsManager.getChannelInput(-this.options.peerId), + channel: appChatsManager.getChannelInput(this.options.peerId.toChatId()), username }); } else { diff --git a/src/components/wrappers.ts b/src/components/wrappers.ts index 8bb5bdfc..8644bd07 100644 --- a/src/components/wrappers.ts +++ b/src/components/wrappers.ts @@ -570,7 +570,7 @@ export function wrapDocument({message, withTime, fontWeight, voiceAsMusic, showS let docDiv = document.createElement('div'); docDiv.classList.add('document', `ext-${ext}`); - docDiv.dataset.docId = doc.id; + docDiv.dataset.docId = '' + doc.id; const icoDiv = document.createElement('div'); icoDiv.classList.add('document-ico'); @@ -580,7 +580,7 @@ export function wrapDocument({message, withTime, fontWeight, voiceAsMusic, showS docDiv.classList.add('document-with-thumb'); let imgs: HTMLImageElement[] = []; - if(message.pFlags.is_outgoing) { + if(uploading) { icoDiv.innerHTML = ``; imgs.push(icoDiv.firstElementChild as HTMLImageElement); } else { @@ -640,9 +640,9 @@ export function wrapDocument({message, withTime, fontWeight, voiceAsMusic, showS docDiv.prepend(icoDiv); - if(!uploading && message.pFlags.is_outgoing) { + /* if(!uploading && message.pFlags.is_outgoing) { return docDiv; - } + } */ let downloadDiv: HTMLElement, preloader: ProgressivePreloader = null; const onLoad = () => { @@ -1133,7 +1133,7 @@ export function wrapSticker({doc, div, middleware, lazyLoadQueue, group, play, o throw new Error('wrong doc for wrapSticker!'); } - div.dataset.docId = doc.id; + div.dataset.docId = '' + doc.id; div.classList.add('media-sticker-wrapper'); //console.log('wrap sticker', doc, div, onlyThumb); @@ -1185,7 +1185,7 @@ export function wrapSticker({doc, div, middleware, lazyLoadQueue, group, play, o renderImageFromUrl(thumbImage, appPhotosManager.getPreviewURLFromThumb(doc, thumb as PhotoSize.photoStrippedSize, true), afterRender); haveThumbCached = true; } else { - webpWorkerController.convert(doc.id, (thumb as PhotoSize.photoStrippedSize).bytes as Uint8Array).then(bytes => { + webpWorkerController.convert('' + doc.id, (thumb as PhotoSize.photoStrippedSize).bytes as Uint8Array).then(bytes => { (thumb as PhotoSize.photoStrippedSize).bytes = bytes; doc.pFlags.stickerThumbConverted = true; @@ -1594,6 +1594,7 @@ export function wrapAlbum({groupId, attachmentDiv, middleware, uploading, lazyLo const div = attachmentDiv.children[idx] as HTMLElement; div.dataset.mid = '' + message.mid; + div.dataset.peerId = '' + message.peerId; const mediaDiv = div.firstElementChild as HTMLElement; if(media._ === 'photo') { wrapPhoto({ diff --git a/src/config/app.ts b/src/config/app.ts index be231dba..90f1d76d 100644 --- a/src/config/app.ts +++ b/src/config/app.ts @@ -18,7 +18,8 @@ const App = { hash: process.env.API_HASH, version: process.env.VERSION, versionFull: process.env.VERSION_FULL, - langPackVersion: '0.3.3', + build: +process.env.BUILD, + langPackVersion: '0.3.5', langPack: 'macos', langPackCode: 'en', domains: [MAIN_DOMAIN] as string[], diff --git a/src/global.d.ts b/src/global.d.ts index cdba7a96..63a88692 100644 --- a/src/global.d.ts +++ b/src/global.d.ts @@ -1,4 +1,5 @@ import type ListenerSetter from "./helpers/listenerSetter"; +import type { Chat, Document, User } from "./layer"; declare global { interface AddEventListenerOptions extends EventListenerOptions { @@ -7,6 +8,24 @@ declare global { // ls?: ListenerSetter; } + type UserId = User.user['id']; + type ChatId = Chat.chat['id']; + // type PeerId = `u${UserId}` | `c${ChatId}`; + // type PeerId = `${UserId}` | `-${ChatId}`; + type PeerId = number; + // type PeerId = number; + type BotId = UserId; + type DocId = Document.document['id']; + type Long = string | number; + type MTLong = string; + + type LocalErrorType = 'DOWNLOAD_CANCELED'; + type ServerErrorType = 'FILE_REFERENCE_EXPIRED'; + + interface Error { + type?: LocalErrorType | ServerErrorType; + } + declare module 'worker-loader!*' { class WebpackWorker extends Worker { constructor(); diff --git a/src/helpers/array.ts b/src/helpers/array.ts index a83cf4b4..106d6222 100644 --- a/src/helpers/array.ts +++ b/src/helpers/array.ts @@ -21,6 +21,12 @@ export function listMergeSorted(list1: any[] = [], list2: any[] = []) { export const accumulate = (arr: number[], initialValue: number) => arr.reduce((acc, value) => acc + value, initialValue); +export function indexOfAndSplice(array: Array, item: T) { + const idx = array.indexOf(item); + const spliced = idx !== -1 && array.splice(idx, 1); + return spliced && spliced[0]; +} + export function findAndSpliceAll(array: Array, verify: (value: T, index: number, arr: typeof array) => boolean) { const out: typeof array = []; let idx = -1; diff --git a/src/helpers/avatarListLoader.ts b/src/helpers/avatarListLoader.ts index 99112507..af7da474 100644 --- a/src/helpers/avatarListLoader.ts +++ b/src/helpers/avatarListLoader.ts @@ -4,17 +4,18 @@ * https://github.com/morethanwords/tweb/blob/master/LICENSE */ +import { Photo } from "../layer"; import appPhotosManager from "../lib/appManagers/appPhotosManager"; import ListLoader, { ListLoaderOptions } from "./listLoader"; -export default class AvatarListLoader extends ListLoader { - private peerId: number; +export default class AvatarListLoader extends ListLoader { + private peerId: PeerId; - constructor(options: Omit, 'loadMore'> & {peerId: number}) { + constructor(options: Omit, 'loadMore'> & {peerId: PeerId}) { super({ ...options, loadMore: (anchor, older, loadCount) => { - if(this.peerId < 0 || !older) return Promise.resolve({count: 0, items: []}); // ! это значит, что открыло аватар чата, но следующих фотографий нет. + if(this.peerId.isAnyChat() || !older) return Promise.resolve({count: 0, items: []}); // ! это значит, что открыло аватар чата, но следующих фотографий нет. const maxId = anchor?.photoId; return appPhotosManager.getUserPhotos(this.peerId, maxId, loadCount).then(value => { diff --git a/src/helpers/compareVersion.ts b/src/helpers/compareVersion.ts new file mode 100644 index 00000000..35aa6e54 --- /dev/null +++ b/src/helpers/compareVersion.ts @@ -0,0 +1,15 @@ +export default function compareVersion(v1: string, v2: string): number { + v1 = v1.split(' ', 1)[0]; + v2 = v2.split(' ', 1)[0]; + const s1 = v1.split('.'); + const s2 = v2.split('.'); + + for(let i = 0; i < s1.length; ++i) { + const v1 = +s1[i]; + const v2 = +s2[i]; + if(v1 > v2) return 1; + else if(v1 < v2) return -1; + } + + return 0; +} diff --git a/src/helpers/dom/getRichElementValue.ts b/src/helpers/dom/getRichElementValue.ts index 39404d99..8ef37dcf 100644 --- a/src/helpers/dom/getRichElementValue.ts +++ b/src/helpers/dom/getRichElementValue.ts @@ -77,7 +77,7 @@ export default function getRichElementValue(node: HTMLElement, lines: string[], _: tag.entityName, offset: offset.offset, length: nodeValue.length, - user_id: +parentElement.dataset.follow + user_id: parentElement.dataset.follow }); } else { entities.push({ diff --git a/src/helpers/dom/handleHorizontalSwipe.ts b/src/helpers/dom/handleHorizontalSwipe.ts new file mode 100644 index 00000000..a90faefa --- /dev/null +++ b/src/helpers/dom/handleHorizontalSwipe.ts @@ -0,0 +1,50 @@ +/* + * https://github.com/morethanwords/tweb + * Copyright (C) 2019-2021 Eduard Kuzmenko + * https://github.com/morethanwords/tweb/blob/master/LICENSE + */ + +import SwipeHandler, { SwipeHandlerOptions } from "../../components/swipeHandler"; +import { IS_APPLE_MOBILE, IS_SAFARI } from "../../environment/userAgent"; +import { cancelEvent } from "./cancelEvent"; +import findUpClassName from "./findUpClassName"; +import isSwipingBackSafari from "./isSwipingBackSafari"; + +export type SwipeHandlerHorizontalOptions = SwipeHandlerOptions & { + // xThreshold?: number +}; + +export default function handleHorizontalSwipe(options: SwipeHandlerHorizontalOptions) { + let cancelY = false; + return new SwipeHandler({ + ...options, + verifyTouchTarget: (e) => { + return !findUpClassName(e.target, 'progress-line') && + !isSwipingBackSafari(e) && + (options.verifyTouchTarget ? options.verifyTouchTarget(e) : true); + }, + onSwipe: (xDiff, yDiff, e) => { + if(!cancelY && Math.abs(yDiff) > 20) { + return true; + } + + if(Math.abs(xDiff) > Math.abs(yDiff)) { + cancelEvent(e); + cancelY = true; + } else if(!cancelY && Math.abs(yDiff) > Math.abs(xDiff)/* || Math.abs(yDiff) > 20 */) { + return true; + } + + /* if(!cancelY && options.xThreshold !== undefined && xDiff >= options.xThreshold) { + cancelY = true; + } */ + + return options.onSwipe(xDiff, yDiff, e); + }, + onReset: () => { + cancelY = false; + options.onReset && options.onReset(); + }, + cancelEvent: true + }); +} diff --git a/src/helpers/dom/handleTabSwipe.ts b/src/helpers/dom/handleTabSwipe.ts index 41be7dd5..67975f51 100644 --- a/src/helpers/dom/handleTabSwipe.ts +++ b/src/helpers/dom/handleTabSwipe.ts @@ -5,52 +5,18 @@ */ import { cancelContextMenuOpening } from "../../components/misc"; -import SwipeHandler from "../../components/swipeHandler"; -import { cancelEvent } from "./cancelEvent"; +import handleHorizontalSwipe, { SwipeHandlerHorizontalOptions } from "./handleHorizontalSwipe"; -export default function handleTabSwipe(container: HTMLElement, onSwipe: (next: boolean) => void) { - /* let hadScroll = false; - const onScroll = () => { - swipeHandler.reset(); - }; - let firstSwipeChecked = false; */ - return new SwipeHandler({ - element: container, - /* onFirstSwipe: () => { - this.scroll.container.addEventListener('scroll', onScroll, {passive: true}); - }, */ +export default function handleTabSwipe(options: SwipeHandlerHorizontalOptions) { + return handleHorizontalSwipe({ + ...options, onSwipe: (xDiff, yDiff, e) => { - /* if(!firstSwipeChecked) { - firstSwipeChecked = true; - if(yDiff !== 0) { - return true; - } - } - - cancelEvent(e); */ - - if(Math.abs(yDiff) > 20) { - return true; - } - - if(Math.abs(xDiff) > Math.abs(yDiff)) { - cancelEvent(e); - } else if(Math.abs(yDiff) > Math.abs(xDiff)/* || Math.abs(yDiff) > 20 */) { - return true; - } - if(Math.abs(xDiff) > 50) { - onSwipe(xDiff > 0); + options.onSwipe(xDiff, yDiff, e); cancelContextMenuOpening(); return true; } - }, - /* onReset: () => { - hadScroll = false; - firstSwipeChecked = false; - this.scroll.container.removeEventListener('scroll', onScroll); - }, */ - cancelEvent: false + } }); -} \ No newline at end of file +} diff --git a/src/helpers/dom/isSwipingBackSafari.ts b/src/helpers/dom/isSwipingBackSafari.ts new file mode 100644 index 00000000..66e4dc7a --- /dev/null +++ b/src/helpers/dom/isSwipingBackSafari.ts @@ -0,0 +1,11 @@ +/* + * https://github.com/morethanwords/tweb + * Copyright (C) 2019-2021 Eduard Kuzmenko + * https://github.com/morethanwords/tweb/blob/master/LICENSE + */ + +import { IS_MOBILE_SAFARI } from "../../environment/userAgent"; + +export default function isSwipingBackSafari(e: TouchEvent | MouseEvent) { + return IS_MOBILE_SAFARI && e instanceof TouchEvent && e.touches[0].clientX < 30; +} diff --git a/src/helpers/dom/lockTouchScroll.ts b/src/helpers/dom/lockTouchScroll.ts new file mode 100644 index 00000000..4a7f8c13 --- /dev/null +++ b/src/helpers/dom/lockTouchScroll.ts @@ -0,0 +1,25 @@ +/* + * https://github.com/morethanwords/tweb + * Copyright (C) 2019-2021 Eduard Kuzmenko + * https://github.com/morethanwords/tweb/blob/master/LICENSE + */ + +import { cancelEvent } from "./cancelEvent"; + +export default function lockTouchScroll(container: HTMLElement) { + const onTouchMove = (e: TouchEvent) => { + cancelEvent(e); + }; + + let lockers = 2; + const cb = () => { + if(!--lockers) { + container.removeEventListener('touchmove', onTouchMove, {capture: true}); + } + }; + + container.addEventListener('touchmove', onTouchMove, {capture: true, passive: false}); + container.addEventListener('touchend', cb, {once: true}); + + return cb; +} diff --git a/src/helpers/object.ts b/src/helpers/object.ts index 19e2ee56..17cebeff 100644 --- a/src/helpers/object.ts +++ b/src/helpers/object.ts @@ -46,10 +46,10 @@ export function deepEqual(x: any, y: any): boolean { ) : (x === y); } -export function defineNotNumerableProperties(obj: {[key: string]: any}, names: string[]) { +export function defineNotNumerableProperties(obj: T, names: (keyof T)[]) { //const perf = performance.now(); const props = {writable: true, configurable: true}; - const out: {[name: string]: typeof props} = {}; + const out: {[name in keyof T]?: typeof props} = {}; names.forEach(name => { if(obj[name] === undefined) { out[name] = props; @@ -108,7 +108,7 @@ export function safeReplaceArrayInObject(key: K, wasObject: any, newObject: a } } -export function isObject(object: any) { +export function isObject>(object: any): object is T { return typeof(object) === 'object' && object !== null; } diff --git a/src/helpers/peerIdPolyfill.ts b/src/helpers/peerIdPolyfill.ts new file mode 100644 index 00000000..eca8dd44 --- /dev/null +++ b/src/helpers/peerIdPolyfill.ts @@ -0,0 +1,55 @@ +/* + * https://github.com/morethanwords/tweb + * Copyright (C) 2019-2021 Eduard Kuzmenko + * https://github.com/morethanwords/tweb/blob/master/LICENSE + */ + +String.prototype.toUserId = function() { + return (+this).toUserId(); +}; + +String.prototype.toChatId = function() { + return (+this).toChatId(); +}; + +String.prototype.toPeerId = function(isChat?: boolean) { + return (+this).toPeerId(isChat); +}; + +String.prototype.isPeerId = function() { + return /^[\d-]/.test(this.toString()); +}; + +Number.prototype.toUserId = function() { + return this as any; +}; + +Number.prototype.toChatId = function() { + return -this; +}; + +Number.prototype.toPeerId = function(isChat?: boolean) { + return isChat === undefined ? this as number : (isChat ? -Math.abs(this as number) : this as number); +}; + +Number.prototype.isPeerId = function() { + return true; +}; + +declare global { + interface String { + toUserId(): UserId; + toChatId(): ChatId; + toPeerId(isChat?: boolean): PeerId; + isPeerId(): this is string; + } + + interface Number { + toUserId(): UserId; + toChatId(): ChatId; + toPeerId(isChat?: boolean): PeerId; + isPeerId(): this is PeerId; + } +} + +export {}; diff --git a/src/helpers/searchListLoader.ts b/src/helpers/searchListLoader.ts index de0c3a6e..f80f07a0 100644 --- a/src/helpers/searchListLoader.ts +++ b/src/helpers/searchListLoader.ts @@ -8,13 +8,13 @@ import type { MediaSearchContext } from "../components/appMediaPlaybackControlle import type { SearchSuperContext } from "../components/appSearchSuper."; import type { Message } from "../layer"; import appMessagesIdsManager from "../lib/appManagers/appMessagesIdsManager"; -import appMessagesManager from "../lib/appManagers/appMessagesManager"; +import appMessagesManager, { MyMessage } from "../lib/appManagers/appMessagesManager"; import rootScope from "../lib/rootScope"; import { forEachReverse } from "./array"; import filterChatPhotosMessages from "./filterChatPhotosMessages"; import ListLoader, { ListLoaderOptions } from "./listLoader"; -export default class SearchListLoader extends ListLoader { +export default class SearchListLoader extends ListLoader { public searchContext: MediaSearchContext; public onEmptied: () => void; @@ -73,7 +73,7 @@ export default class SearchListLoader}) => { + protected onHistoryDelete = ({peerId, msgs}: {peerId: PeerId, msgs: Set}) => { const shouldBeDeleted = (item: Item) => item.peerId === peerId && msgs.has(item.mid); const filter = (item: Item, idx: number, arr: Item[]) => { if(shouldBeDeleted(item)) { @@ -120,7 +120,7 @@ export default class SearchListLoader { + protected onMessageSent = ({message}: {message: MyMessage}) => { this.onHistoryMultiappend({ [message.peerId]: new Set([message.mid]) }); diff --git a/src/helpers/sortedList.ts b/src/helpers/sortedList.ts index 557bba96..37987033 100644 --- a/src/helpers/sortedList.ts +++ b/src/helpers/sortedList.ts @@ -8,16 +8,17 @@ import { insertInDescendSortedArray } from "./array"; import { getMiddleware } from "./middleware"; import { safeAssign } from "./object"; +export type SortedElementId = PeerId; export type SortedElementBase = { - id: number, + id: SortedElementId, index: number }; export default class SortedList { - protected elements: Map; + protected elements: Map; protected sorted: Array; - protected getIndex: (id: number) => number; + protected getIndex: (id: SortedElementId) => number; protected onDelete: (element: SortedElement) => void; protected onUpdate: (element: SortedElement) => void; protected onSort: (element: SortedElement, idx: number) => void; @@ -75,11 +76,11 @@ export default class SortedList { }); } - public has(id: number) { + public has(id: SortedElementId) { return this.elements.has(id); } - public get(id: number) { + public get(id: SortedElementId) { return this.elements.get(id); } @@ -87,7 +88,7 @@ export default class SortedList { return this.elements; } - public add(id: number, batch = false, updateElementWith?: SortedList['updateElementWith'], updateBatch = batch) { + public add(id: SortedElementId, batch = false, updateElementWith?: SortedList['updateElementWith'], updateBatch = batch) { let element = this.get(id); if(element) { return element; @@ -105,7 +106,7 @@ export default class SortedList { return element; } - public delete(id: number, noScheduler?: boolean) { + public delete(id: SortedElementId, noScheduler?: boolean) { const element = this.elements.get(id); if(!element) { return false; @@ -136,7 +137,7 @@ export default class SortedList { return true; } - public update(id: number, batch = false, element = this.get(id), updateElementWith?: SortedList['updateElementWith']) { + public update(id: SortedElementId, batch = false, element = this.get(id), updateElementWith?: SortedList['updateElementWith']) { if(!element) { return; } diff --git a/src/index.ts b/src/index.ts index bf76910d..e884c0b0 100644 --- a/src/index.ts +++ b/src/index.ts @@ -99,13 +99,14 @@ console.timeEnd('get storage1'); */ const workerProxy = new Proxy(Worker, workerHandler); Worker = workerProxy; - const [_, touchSupport, userAgent, rootScope, appStateManager, I18n] = await Promise.all([ + const [_, touchSupport, userAgent, rootScope, appStateManager, I18n, __] = await Promise.all([ import('./lib/polyfill'), import('./environment/touchSupport'), import('./environment/userAgent'), import('./lib/rootScope'), import('./lib/appManagers/appStateManager'), import('./lib/langPack'), + import('./helpers/peerIdPolyfill'), ]); //console.timeEnd('get storage'); diff --git a/src/lang.ts b/src/lang.ts index 2787b72c..b72114da 100644 --- a/src/lang.ts +++ b/src/lang.ts @@ -134,6 +134,7 @@ const lang = { "PushNotification.Action.Mute1d.Mobile": "Mute for 24H", "PushNotification.Action.Settings.Mobile": "Alerts settings", "PushNotification.Message.NoPreview": "You have a new message", + "LogOut.Description": "Are you sure you want to log out?\n\nNote that you can seamlessly use Telegram on all your devices at once.", //"PushNotification.Action.Mute1d.Success": "Notification settings were successfully saved.", // * android @@ -586,6 +587,7 @@ const lang = { "UserUnblocked": "User unblocked", "AudioUnknownArtist": "Unknown artist", "AudioUnknownTitle": "Unknown title", + "LogOut": "Log out", // * macos "AccountSettings.Filters": "Chat Folders", @@ -593,6 +595,7 @@ const lang = { "AccountSettings.PrivacyAndSecurity": "Privacy and Security", "AccountSettings.Language": "Language", "Alert.UserDoesntExists": "Sorry, this user doesn't seem to exist.", + "Alert.Confirm.Discard": "Discard", "Appearance.Reset": "Reset to Defaults", "Bio.Description": "Any details such as age, occupation or city.\nExample: 23 y.o. designer from San Francisco", "Contacts.PhoneNumber.NotRegistred": "The person with this phone number is not registered on Telegram yet.", @@ -605,6 +608,7 @@ const lang = { "Chat.DropTitle": "Drop files here to send them", "Chat.DropQuickDesc": "in a quick way", "Chat.DropAsFilesDesc": "without compression", + "Chat.Edit.Cancel.Text": "Are you sure you want to discard all changes?", "Chat.Service.PeerJoinedTelegram": "%@ joined Telegram", "Chat.Service.Channel.UpdatedTitle": "Channel renamed to \"%@\"", "Chat.Service.Channel.UpdatedPhoto": "Channel photo updated", diff --git a/src/layer.d.ts b/src/layer.d.ts index 9c1322f9..6a06f182 100644 --- a/src/layer.d.ts +++ b/src/layer.d.ts @@ -27,33 +27,33 @@ export namespace InputPeer { export type inputPeerChat = { _: 'inputPeerChat', - chat_id: number + chat_id: string | number }; export type inputPeerUser = { _: 'inputPeerUser', - user_id: number, - access_hash: string + user_id: string | number, + access_hash: string | number }; export type inputPeerChannel = { _: 'inputPeerChannel', - channel_id: number, - access_hash: string + channel_id: string | number, + access_hash: string | number }; export type inputPeerUserFromMessage = { _: 'inputPeerUserFromMessage', peer: InputPeer, msg_id: number, - user_id: number + user_id: string | number }; export type inputPeerChannelFromMessage = { _: 'inputPeerChannelFromMessage', peer: InputPeer, msg_id: number, - channel_id: number + channel_id: string | number }; } @@ -73,15 +73,15 @@ export namespace InputUser { export type inputUser = { _: 'inputUser', - user_id: number, - access_hash: string + user_id: string | number, + access_hash: string | number }; export type inputUserFromMessage = { _: 'inputUserFromMessage', peer: InputPeer, msg_id: number, - user_id: number + user_id: string | number }; } @@ -93,7 +93,7 @@ export type InputContact = InputContact.inputPhoneContact; export namespace InputContact { export type inputPhoneContact = { _: 'inputPhoneContact', - client_id: string, + client_id: string | number, phone: string, first_name: string, last_name: string @@ -108,7 +108,7 @@ export type InputFile = InputFile.inputFile | InputFile.inputFileBig; export namespace InputFile { export type inputFile = { _: 'inputFile', - id: string, + id: string | number, parts: number, name: string, md5_checksum: string @@ -116,7 +116,7 @@ export namespace InputFile { export type inputFileBig = { _: 'inputFileBig', - id: string, + id: string | number, parts: number, name: string }; @@ -158,7 +158,7 @@ export namespace InputMedia { first_name: string, last_name: string, vcard: string, - user_id?: number + user_id?: UserId }; export type inputMediaUploadedDocument = { @@ -308,8 +308,8 @@ export namespace InputPhoto { export type inputPhoto = { _: 'inputPhoto', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[] }; } @@ -322,22 +322,22 @@ export type InputFileLocation = InputFileLocation.inputFileLocation | InputFileL export namespace InputFileLocation { export type inputFileLocation = { _: 'inputFileLocation', - volume_id: string, + volume_id: string | number, local_id: number, - secret: string, + secret: string | number, file_reference: Uint8Array | number[] }; export type inputEncryptedFileLocation = { _: 'inputEncryptedFileLocation', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputDocumentFileLocation = { _: 'inputDocumentFileLocation', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[], thumb_size: string, checkedReference?: boolean @@ -345,8 +345,8 @@ export namespace InputFileLocation { export type inputSecureFileLocation = { _: 'inputSecureFileLocation', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputTakeoutFileLocation = { @@ -355,20 +355,20 @@ export namespace InputFileLocation { export type inputPhotoFileLocation = { _: 'inputPhotoFileLocation', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[], thumb_size: string }; export type inputPhotoLegacyFileLocation = { _: 'inputPhotoLegacyFileLocation', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[], - volume_id: string, + volume_id: string | number, local_id: number, - secret: string + secret: string | number }; export type inputPeerPhotoFileLocation = { @@ -378,7 +378,7 @@ export namespace InputFileLocation { big?: true, }>, peer: InputPeer, - photo_id: string + photo_id: string | number }; export type inputStickerSetThumb = { @@ -389,9 +389,12 @@ export namespace InputFileLocation { export type inputGroupCallStream = { _: 'inputGroupCallStream', + flags?: number, call: InputGroupCall, - time_ms: string, - scale: number + time_ms: string | number, + scale: number, + video_channel?: number, + video_quality?: number }; } @@ -403,17 +406,17 @@ export type Peer = Peer.peerUser | Peer.peerChat | Peer.peerChannel; export namespace Peer { export type peerUser = { _: 'peerUser', - user_id: number + user_id: string | number }; export type peerChat = { _: 'peerChat', - chat_id: number + chat_id: string | number }; export type peerChannel = { _: 'peerChannel', - channel_id: number + channel_id: string | number }; } @@ -472,7 +475,7 @@ export type User = User.userEmpty | User.user; export namespace User { export type userEmpty = { _: 'userEmpty', - id: number + id: string | number }; export type user = { @@ -495,8 +498,8 @@ export namespace User { apply_min_photo?: true, fake?: true, }>, - id: number, - access_hash?: string, + id: string | number, + access_hash?: string | number, first_name?: string, last_name?: string, username?: string, @@ -528,7 +531,7 @@ export namespace UserProfilePhoto { pFlags?: Partial<{ has_video?: true, }>, - photo_id: string, + photo_id: string | number, stripped_thumb?: Uint8Array, dc_id: number }; @@ -575,7 +578,7 @@ export type Chat = Chat.chatEmpty | Chat.chat | Chat.chatForbidden | Chat.channe export namespace Chat { export type chatEmpty = { _: 'chatEmpty', - id: number + id: string | number }; export type chat = { @@ -589,7 +592,7 @@ export namespace Chat { call_active?: true, call_not_empty?: true, }>, - id: number, + id: string | number, title: string, photo: ChatPhoto, participants_count: number, @@ -603,7 +606,7 @@ export namespace Chat { export type chatForbidden = { _: 'chatForbidden', - id: number, + id: string | number, title: string, initials?: string }; @@ -629,13 +632,12 @@ export namespace Chat { fake?: true, gigagroup?: true, }>, - id: number, - access_hash?: string, + id: string | number, + access_hash?: string | number, title: string, username?: string, photo: ChatPhoto, date: number, - version: number, restriction_reason?: Array, admin_rights?: ChatAdminRights, banned_rights?: ChatBannedRights, @@ -651,8 +653,8 @@ export namespace Chat { broadcast?: true, megagroup?: true, }>, - id: number, - access_hash: string, + id: string | number, + access_hash: string | number, title: string, until_date?: number, initials?: string @@ -672,7 +674,7 @@ export namespace ChatFull { can_set_username?: true, has_scheduled?: true, }>, - id: number, + id: string | number, about: string, participants: ChatParticipants, chat_photo?: Photo, @@ -683,7 +685,8 @@ export namespace ChatFull { folder_id?: number, call?: InputGroupCall, ttl_period?: number, - groupcall_default_join_as?: Peer + groupcall_default_join_as?: Peer, + theme_emoticon?: string }; export type channelFull = { @@ -699,7 +702,7 @@ export namespace ChatFull { can_view_stats?: true, blocked?: true, }>, - id: number, + id: string | number, about: string, participants_count?: number, admins_count?: number, @@ -713,13 +716,13 @@ export namespace ChatFull { notify_settings: PeerNotifySettings, exported_invite?: ExportedChatInvite, bot_info: Array, - migrated_from_chat_id?: number, + migrated_from_chat_id?: string | number, migrated_from_max_id?: number, pinned_msg_id?: number, stickerset?: StickerSet, available_min_id?: number, folder_id?: number, - linked_chat_id?: number, + linked_chat_id?: string | number, location?: ChannelLocation, slowmode_seconds?: number, slowmode_next_send_date?: number, @@ -728,7 +731,8 @@ export namespace ChatFull { call?: InputGroupCall, ttl_period?: number, pending_suggestions?: Array, - groupcall_default_join_as?: Peer + groupcall_default_join_as?: Peer, + theme_emoticon?: string }; } @@ -740,20 +744,20 @@ export type ChatParticipant = ChatParticipant.chatParticipant | ChatParticipant. export namespace ChatParticipant { export type chatParticipant = { _: 'chatParticipant', - user_id: number, - inviter_id: number, + user_id: string | number, + inviter_id: string | number, date: number }; export type chatParticipantCreator = { _: 'chatParticipantCreator', - user_id: number + user_id: string | number }; export type chatParticipantAdmin = { _: 'chatParticipantAdmin', - user_id: number, - inviter_id: number, + user_id: string | number, + inviter_id: string | number, date: number }; } @@ -767,13 +771,13 @@ export namespace ChatParticipants { export type chatParticipantsForbidden = { _: 'chatParticipantsForbidden', flags?: number, - chat_id: number, + chat_id: string | number, self_participant?: ChatParticipant }; export type chatParticipants = { _: 'chatParticipants', - chat_id: number, + chat_id: string | number, participants: Array, version: number }; @@ -795,7 +799,7 @@ export namespace ChatPhoto { pFlags?: Partial<{ has_video?: true, }>, - photo_id: string, + photo_id: string | number, stripped_thumb?: Uint8Array, dc_id: number }; @@ -836,7 +840,7 @@ export namespace Message { from_id?: Peer, peer_id: Peer, fwd_from?: MessageFwdHeader, - via_bot_id?: number, + via_bot_id?: string | number, reply_to?: MessageReplyHeader, date: number, message: string, @@ -853,11 +857,12 @@ export namespace Message { ttl_period?: number, mid?: number, deleted?: boolean, - peerId?: number, - fromId?: number, + peerId?: PeerId, + fromId?: PeerId, + fwdFromId?: PeerId, random_id?: string, rReply?: string, - viaBotId?: number, + viaBotId?: PeerId, clear_history?: boolean, pending?: boolean, error?: any, @@ -888,10 +893,14 @@ export namespace Message { ttl_period?: number, mid?: number, deleted?: boolean, - peerId?: number, - fromId?: number, + peerId?: PeerId, + fromId?: PeerId, rReply?: string, - viaBotId?: number + viaBotId?: PeerId, + pending?: boolean, + error?: any, + send?: () => Promise, + random_id?: string }; } @@ -923,7 +932,7 @@ export namespace MessageMedia { first_name: string, last_name: string, vcard: string, - user_id: number + user_id: string | number }; export type messageMediaUnsupported = { @@ -969,7 +978,7 @@ export namespace MessageMedia { photo?: WebDocument, receipt_msg_id?: number, currency: string, - total_amount: string, + total_amount: string | number, start_param: string }; @@ -998,7 +1007,7 @@ export namespace MessageMedia { /** * @link https://core.telegram.org/type/MessageAction */ -export type MessageAction = MessageAction.messageActionEmpty | MessageAction.messageActionChatCreate | MessageAction.messageActionChatEditTitle | MessageAction.messageActionChatEditPhoto | MessageAction.messageActionChatDeletePhoto | MessageAction.messageActionChatAddUser | MessageAction.messageActionChatDeleteUser | MessageAction.messageActionChatJoinedByLink | MessageAction.messageActionChannelCreate | MessageAction.messageActionChatMigrateTo | MessageAction.messageActionChannelMigrateFrom | MessageAction.messageActionPinMessage | MessageAction.messageActionHistoryClear | MessageAction.messageActionGameScore | MessageAction.messageActionPaymentSentMe | MessageAction.messageActionPaymentSent | MessageAction.messageActionPhoneCall | MessageAction.messageActionScreenshotTaken | MessageAction.messageActionCustomAction | MessageAction.messageActionBotAllowed | MessageAction.messageActionSecureValuesSentMe | MessageAction.messageActionSecureValuesSent | MessageAction.messageActionContactSignUp | MessageAction.messageActionGeoProximityReached | MessageAction.messageActionGroupCall | MessageAction.messageActionInviteToGroupCall | MessageAction.messageActionSetMessagesTTL | MessageAction.messageActionGroupCallScheduled | MessageAction.messageActionDiscussionStarted | MessageAction.messageActionChatLeave | MessageAction.messageActionChannelDeletePhoto | MessageAction.messageActionChannelEditTitle | MessageAction.messageActionChannelEditPhoto | MessageAction.messageActionChannelEditVideo | MessageAction.messageActionChatEditVideo | MessageAction.messageActionChatAddUsers | MessageAction.messageActionChatJoined | MessageAction.messageActionChatReturn | MessageAction.messageActionChatJoinedYou | MessageAction.messageActionChatReturnYou; +export type MessageAction = MessageAction.messageActionEmpty | MessageAction.messageActionChatCreate | MessageAction.messageActionChatEditTitle | MessageAction.messageActionChatEditPhoto | MessageAction.messageActionChatDeletePhoto | MessageAction.messageActionChatAddUser | MessageAction.messageActionChatDeleteUser | MessageAction.messageActionChatJoinedByLink | MessageAction.messageActionChannelCreate | MessageAction.messageActionChatMigrateTo | MessageAction.messageActionChannelMigrateFrom | MessageAction.messageActionPinMessage | MessageAction.messageActionHistoryClear | MessageAction.messageActionGameScore | MessageAction.messageActionPaymentSentMe | MessageAction.messageActionPaymentSent | MessageAction.messageActionPhoneCall | MessageAction.messageActionScreenshotTaken | MessageAction.messageActionCustomAction | MessageAction.messageActionBotAllowed | MessageAction.messageActionSecureValuesSentMe | MessageAction.messageActionSecureValuesSent | MessageAction.messageActionContactSignUp | MessageAction.messageActionGeoProximityReached | MessageAction.messageActionGroupCall | MessageAction.messageActionInviteToGroupCall | MessageAction.messageActionSetMessagesTTL | MessageAction.messageActionGroupCallScheduled | MessageAction.messageActionSetChatTheme | MessageAction.messageActionDiscussionStarted | MessageAction.messageActionChatLeave | MessageAction.messageActionChannelDeletePhoto | MessageAction.messageActionChannelEditTitle | MessageAction.messageActionChannelEditPhoto | MessageAction.messageActionChannelEditVideo | MessageAction.messageActionChatEditVideo | MessageAction.messageActionChatAddUsers | MessageAction.messageActionChatJoined | MessageAction.messageActionChatReturn | MessageAction.messageActionChatJoinedYou | MessageAction.messageActionChatReturnYou; export namespace MessageAction { export type messageActionEmpty = { @@ -1008,7 +1017,7 @@ export namespace MessageAction { export type messageActionChatCreate = { _: 'messageActionChatCreate', title: string, - users: Array + users: Array }; export type messageActionChatEditTitle = { @@ -1027,17 +1036,17 @@ export namespace MessageAction { export type messageActionChatAddUser = { _: 'messageActionChatAddUser', - users: Array + users: Array }; export type messageActionChatDeleteUser = { _: 'messageActionChatDeleteUser', - user_id: number + user_id: string | number }; export type messageActionChatJoinedByLink = { _: 'messageActionChatJoinedByLink', - inviter_id: number + inviter_id: string | number }; export type messageActionChannelCreate = { @@ -1047,13 +1056,13 @@ export namespace MessageAction { export type messageActionChatMigrateTo = { _: 'messageActionChatMigrateTo', - channel_id: number + channel_id: string | number }; export type messageActionChannelMigrateFrom = { _: 'messageActionChannelMigrateFrom', title: string, - chat_id: number + chat_id: string | number }; export type messageActionPinMessage = { @@ -1066,7 +1075,7 @@ export namespace MessageAction { export type messageActionGameScore = { _: 'messageActionGameScore', - game_id: string, + game_id: string | number, score: number }; @@ -1074,7 +1083,7 @@ export namespace MessageAction { _: 'messageActionPaymentSentMe', flags?: number, currency: string, - total_amount: string, + total_amount: string | number, payload: Uint8Array, info?: PaymentRequestedInfo, shipping_option_id?: string, @@ -1084,7 +1093,7 @@ export namespace MessageAction { export type messageActionPaymentSent = { _: 'messageActionPaymentSent', currency: string, - total_amount: string + total_amount: string | number }; export type messageActionPhoneCall = { @@ -1093,7 +1102,7 @@ export namespace MessageAction { pFlags?: Partial<{ video?: true, }>, - call_id: string, + call_id: string | number, reason?: PhoneCallDiscardReason, duration?: number }; @@ -1144,7 +1153,7 @@ export namespace MessageAction { export type messageActionInviteToGroupCall = { _: 'messageActionInviteToGroupCall', call: InputGroupCall, - users: Array + users: Array }; export type messageActionSetMessagesTTL = { @@ -1158,13 +1167,18 @@ export namespace MessageAction { schedule_date: number }; + export type messageActionSetChatTheme = { + _: 'messageActionSetChatTheme', + emoticon: string + }; + export type messageActionDiscussionStarted = { _: 'messageActionDiscussionStarted' }; export type messageActionChatLeave = { _: 'messageActionChatLeave', - user_id?: number + user_id?: UserId }; export type messageActionChannelDeletePhoto = { @@ -1193,27 +1207,27 @@ export namespace MessageAction { export type messageActionChatAddUsers = { _: 'messageActionChatAddUsers', - users?: Array + users?: Array }; export type messageActionChatJoined = { _: 'messageActionChatJoined', - users?: Array + users?: Array }; export type messageActionChatReturn = { _: 'messageActionChatReturn', - users?: Array + users?: Array }; export type messageActionChatJoinedYou = { _: 'messageActionChatJoinedYou', - users?: Array + users?: Array }; export type messageActionChatReturnYou = { _: 'messageActionChatReturnYou', - users?: Array + users?: Array }; } @@ -1252,9 +1266,9 @@ export namespace Dialog { index_8?: number, index_9?: number, index_10?: number, - peerId?: number, + peerId?: PeerId, topMessage?: any, - migratedTo?: number + migratedTo?: PeerId }; export type dialogFolder = { @@ -1271,7 +1285,7 @@ export namespace Dialog { unread_muted_messages_count: number, unread_unmuted_messages_count: number, index?: number, - peerId?: number, + peerId?: PeerId, folder_id?: number }; } @@ -1284,7 +1298,7 @@ export type Photo = Photo.photoEmpty | Photo.photo; export namespace Photo { export type photoEmpty = { _: 'photoEmpty', - id: string + id: string | number }; export type photo = { @@ -1293,8 +1307,8 @@ export namespace Photo { pFlags?: Partial<{ has_stickers?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[], date: number, sizes: Array, @@ -1367,7 +1381,7 @@ export namespace GeoPoint { flags?: number, long: number, lat: number, - access_hash: string, + access_hash: string | number, accuracy_radius?: number }; } @@ -1417,7 +1431,7 @@ export type AuthExportedAuthorization = AuthExportedAuthorization.authExportedAu export namespace AuthExportedAuthorization { export type authExportedAuthorization = { _: 'auth.exportedAuthorization', - id: number, + id: string | number, bytes: Uint8Array }; } @@ -1509,7 +1523,7 @@ export type WallPaper = WallPaper.wallPaper | WallPaper.wallPaperNoFile; export namespace WallPaper { export type wallPaper = { _: 'wallPaper', - id: string, + id: string | number, flags?: number, pFlags?: Partial<{ creator?: true, @@ -1517,7 +1531,7 @@ export namespace WallPaper { pattern?: true, dark?: true, }>, - access_hash: string, + access_hash: string | number, slug: string, document: Document, settings?: WallPaperSettings @@ -1525,7 +1539,7 @@ export namespace WallPaper { export type wallPaperNoFile = { _: 'wallPaperNoFile', - id: string, + id: string | number, flags?: number, pFlags?: Partial<{ default?: true, @@ -1601,6 +1615,7 @@ export namespace UserFull { common_chats_count: number, folder_id?: number, ttl_period?: number, + theme_emoticon?: string, rAbout?: string }; } @@ -1613,7 +1628,7 @@ export type Contact = Contact.contact; export namespace Contact { export type contact = { _: 'contact', - user_id: number, + user_id: string | number, mutual: boolean }; } @@ -1626,8 +1641,8 @@ export type ImportedContact = ImportedContact.importedContact; export namespace ImportedContact { export type importedContact = { _: 'importedContact', - user_id: number, - client_id: string + user_id: string | number, + client_id: string | number }; } @@ -1639,7 +1654,7 @@ export type ContactStatus = ContactStatus.contactStatus; export namespace ContactStatus { export type contactStatus = { _: 'contactStatus', - user_id: number, + user_id: string | number, status: UserStatus }; } @@ -1672,7 +1687,7 @@ export namespace ContactsImportedContacts { _: 'contacts.importedContacts', imported: Array, popular_invites: Array, - retry_contacts: Array, + retry_contacts: Array, users: Array }; } @@ -1916,7 +1931,7 @@ export namespace Update { export type updateMessageID = { _: 'updateMessageID', id: number, - random_id: string + random_id: string | number }; export type updateDeleteMessages = { @@ -1928,13 +1943,13 @@ export namespace Update { export type updateUserTyping = { _: 'updateUserTyping', - user_id: number, + user_id: string | number, action: SendMessageAction }; export type updateChatUserTyping = { _: 'updateChatUserTyping', - chat_id: number, + chat_id: string | number, from_id: Peer, action: SendMessageAction }; @@ -1946,13 +1961,13 @@ export namespace Update { export type updateUserStatus = { _: 'updateUserStatus', - user_id: number, + user_id: string | number, status: UserStatus }; export type updateUserName = { _: 'updateUserName', - user_id: number, + user_id: string | number, first_name: string, last_name: string, username: string @@ -1960,7 +1975,7 @@ export namespace Update { export type updateUserPhoto = { _: 'updateUserPhoto', - user_id: number, + user_id: string | number, date: number, photo: UserProfilePhoto, previous: boolean @@ -1992,17 +2007,17 @@ export namespace Update { export type updateChatParticipantAdd = { _: 'updateChatParticipantAdd', - chat_id: number, - user_id: number, - inviter_id: number, + chat_id: string | number, + user_id: string | number, + inviter_id: string | number, date: number, version: number }; export type updateChatParticipantDelete = { _: 'updateChatParticipantDelete', - chat_id: number, - user_id: number, + chat_id: string | number, + user_id: string | number, version: number }; @@ -2038,7 +2053,7 @@ export namespace Update { export type updateUserPhone = { _: 'updateUserPhone', - user_id: number, + user_id: string | number, phone: string }; @@ -2078,13 +2093,13 @@ export namespace Update { export type updateChannelTooLong = { _: 'updateChannelTooLong', flags?: number, - channel_id: number, + channel_id: string | number, pts?: number }; export type updateChannel = { _: 'updateChannel', - channel_id: number + channel_id: string | number }; export type updateNewChannelMessage = { @@ -2098,7 +2113,7 @@ export namespace Update { _: 'updateReadChannelInbox', flags?: number, folder_id?: number, - channel_id: number, + channel_id: string | number, max_id: number, still_unread_count: number, pts: number @@ -2106,7 +2121,7 @@ export namespace Update { export type updateDeleteChannelMessages = { _: 'updateDeleteChannelMessages', - channel_id: number, + channel_id: string | number, messages: Array, pts: number, pts_count: number @@ -2114,15 +2129,15 @@ export namespace Update { export type updateChannelMessageViews = { _: 'updateChannelMessageViews', - channel_id: number, + channel_id: string | number, id: number, views: number }; export type updateChatParticipantAdmin = { _: 'updateChatParticipantAdmin', - chat_id: number, - user_id: number, + chat_id: string | number, + user_id: string | number, is_admin: boolean, version: number }; @@ -2138,7 +2153,7 @@ export namespace Update { pFlags?: Partial<{ masks?: true, }>, - order: Array + order: Array }; export type updateStickerSets = { @@ -2152,8 +2167,8 @@ export namespace Update { export type updateBotInlineQuery = { _: 'updateBotInlineQuery', flags?: number, - query_id: string, - user_id: number, + query_id: string | number, + user_id: string | number, query: string, geo?: GeoPoint, peer_type?: InlineQueryPeerType, @@ -2163,7 +2178,7 @@ export namespace Update { export type updateBotInlineSend = { _: 'updateBotInlineSend', flags?: number, - user_id: number, + user_id: string | number, query: string, geo?: GeoPoint, id: string, @@ -2180,11 +2195,11 @@ export namespace Update { export type updateBotCallbackQuery = { _: 'updateBotCallbackQuery', flags?: number, - query_id: string, - user_id: number, + query_id: string | number, + user_id: string | number, peer: Peer, msg_id: number, - chat_instance: string, + chat_instance: string | number, data?: Uint8Array, game_short_name?: string }; @@ -2199,17 +2214,17 @@ export namespace Update { export type updateInlineBotCallbackQuery = { _: 'updateInlineBotCallbackQuery', flags?: number, - query_id: string, - user_id: number, + query_id: string | number, + user_id: string | number, msg_id: InputBotInlineMessageID, - chat_instance: string, + chat_instance: string | number, data?: Uint8Array, game_short_name?: string }; export type updateReadChannelOutbox = { _: 'updateReadChannelOutbox', - channel_id: number, + channel_id: string | number, max_id: number }; @@ -2239,7 +2254,7 @@ export namespace Update { export type updateChannelWebPage = { _: 'updateChannelWebPage', - channel_id: number, + channel_id: string | number, webpage: WebPage, pts: number, pts_count: number @@ -2269,15 +2284,15 @@ export namespace Update { export type updateBotWebhookJSONQuery = { _: 'updateBotWebhookJSONQuery', - query_id: string, + query_id: string | number, data: DataJSON, timeout: number }; export type updateBotShippingQuery = { _: 'updateBotShippingQuery', - query_id: string, - user_id: number, + query_id: string | number, + user_id: string | number, payload: Uint8Array, shipping_address: PostAddress }; @@ -2285,13 +2300,13 @@ export namespace Update { export type updateBotPrecheckoutQuery = { _: 'updateBotPrecheckoutQuery', flags?: number, - query_id: string, - user_id: number, + query_id: string | number, + user_id: string | number, payload: Uint8Array, info?: PaymentRequestedInfo, shipping_option_id?: string, currency: string, - total_amount: string + total_amount: string | number }; export type updatePhoneCall = { @@ -2315,7 +2330,7 @@ export namespace Update { export type updateChannelReadMessagesContents = { _: 'updateChannelReadMessagesContents', - channel_id: number, + channel_id: string | number, messages: Array }; @@ -2325,7 +2340,7 @@ export namespace Update { export type updateChannelAvailableMessages = { _: 'updateChannelAvailableMessages', - channel_id: number, + channel_id: string | number, available_min_id: number }; @@ -2341,7 +2356,7 @@ export namespace Update { export type updateMessagePoll = { _: 'updateMessagePoll', flags?: number, - poll_id: string, + poll_id: string | number, poll?: Poll, results: PollResults }; @@ -2399,8 +2414,8 @@ export namespace Update { export type updateMessagePollVote = { _: 'updateMessagePollVote', - poll_id: string, - user_id: number, + poll_id: string | number, + user_id: string | number, options: Array, qts: number }; @@ -2423,13 +2438,13 @@ export namespace Update { export type updatePhoneCallSignalingData = { _: 'updatePhoneCallSignalingData', - phone_call_id: string, + phone_call_id: string | number, data: Uint8Array }; export type updateChannelMessageForwards = { _: 'updateChannelMessageForwards', - channel_id: number, + channel_id: string | number, id: number, forwards: number }; @@ -2437,16 +2452,16 @@ export namespace Update { export type updateReadChannelDiscussionInbox = { _: 'updateReadChannelDiscussionInbox', flags?: number, - channel_id: number, + channel_id: string | number, top_msg_id: number, read_max_id: number, - broadcast_id?: number, + broadcast_id?: string | number, broadcast_post?: number }; export type updateReadChannelDiscussionOutbox = { _: 'updateReadChannelDiscussionOutbox', - channel_id: number, + channel_id: string | number, top_msg_id: number, read_max_id: number }; @@ -2460,7 +2475,7 @@ export namespace Update { export type updateChannelUserTyping = { _: 'updateChannelUserTyping', flags?: number, - channel_id: number, + channel_id: string | number, top_msg_id?: number, from_id: Peer, action: SendMessageAction @@ -2484,7 +2499,7 @@ export namespace Update { pFlags?: Partial<{ pinned?: true, }>, - channel_id: number, + channel_id: string | number, messages: Array, pts: number, pts_count: number @@ -2492,7 +2507,7 @@ export namespace Update { export type updateChat = { _: 'updateChat', - chat_id: number + chat_id: string | number }; export type updateGroupCallParticipants = { @@ -2504,7 +2519,7 @@ export namespace Update { export type updateGroupCall = { _: 'updateGroupCall', - chat_id: number, + chat_id: string | number, call: GroupCall }; @@ -2518,10 +2533,10 @@ export namespace Update { export type updateChatParticipant = { _: 'updateChatParticipant', flags?: number, - chat_id: number, + chat_id: string | number, date: number, - actor_id: number, - user_id: number, + actor_id: string | number, + user_id: string | number, prev_participant?: ChatParticipant, new_participant?: ChatParticipant, invite?: ExportedChatInvite, @@ -2531,10 +2546,10 @@ export namespace Update { export type updateChannelParticipant = { _: 'updateChannelParticipant', flags?: number, - channel_id: number, + channel_id: string | number, date: number, - actor_id: number, - user_id: number, + actor_id: string | number, + user_id: string | number, prev_participant?: ChannelParticipant, new_participant?: ChannelParticipant, invite?: ExportedChatInvite, @@ -2543,7 +2558,7 @@ export namespace Update { export type updateBotStopped = { _: 'updateBotStopped', - user_id: number, + user_id: string | number, date: number, stopped: boolean, qts: number @@ -2561,7 +2576,7 @@ export namespace Update { export type updateBotCommands = { _: 'updateBotCommands', peer: Peer, - bot_id: number, + bot_id: string | number, commands: Array }; @@ -2573,12 +2588,12 @@ export namespace Update { export type updateDeleteDiscussionMessages = { _: 'updateDeleteDiscussionMessages', messages?: number[], - channel_id?: number + channel_id?: ChatId }; export type updateChannelReload = { _: 'updateChannelReload', - channel_id?: number + channel_id?: ChatId }; } @@ -2656,13 +2671,13 @@ export namespace Updates { silent?: true, }>, id: number, - user_id: number, + user_id: string | number, message: string, pts: number, pts_count: number, date: number, fwd_from?: MessageFwdHeader, - via_bot_id?: number, + via_bot_id?: string | number, reply_to?: MessageReplyHeader, entities?: Array, ttl_period?: number @@ -2678,14 +2693,14 @@ export namespace Updates { silent?: true, }>, id: number, - from_id: number, - chat_id: number, + from_id: string | number, + chat_id: string | number, message: string, pts: number, pts_count: number, date: number, fwd_from?: MessageFwdHeader, - via_bot_id?: number, + via_bot_id?: string | number, reply_to?: MessageReplyHeader, entities?: Array, ttl_period?: number @@ -2942,10 +2957,10 @@ export namespace EncryptedChat { export type encryptedChatWaiting = { _: 'encryptedChatWaiting', id: number, - access_hash: string, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number + admin_id: string | number, + participant_id: string | number }; export type encryptedChatRequested = { @@ -2953,22 +2968,22 @@ export namespace EncryptedChat { flags?: number, folder_id?: number, id: number, - access_hash: string, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number, + admin_id: string | number, + participant_id: string | number, g_a: Uint8Array }; export type encryptedChat = { _: 'encryptedChat', id: number, - access_hash: string, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number, + admin_id: string | number, + participant_id: string | number, g_a_or_b: Uint8Array, - key_fingerprint: string + key_fingerprint: string | number }; export type encryptedChatDiscarded = { @@ -2990,7 +3005,7 @@ export namespace InputEncryptedChat { export type inputEncryptedChat = { _: 'inputEncryptedChat', chat_id: number, - access_hash: string + access_hash: string | number }; } @@ -3006,8 +3021,8 @@ export namespace EncryptedFile { export type encryptedFile = { _: 'encryptedFile', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, size: number, dc_id: number, key_fingerprint: number @@ -3026,7 +3041,7 @@ export namespace InputEncryptedFile { export type inputEncryptedFileUploaded = { _: 'inputEncryptedFileUploaded', - id: string, + id: string | number, parts: number, md5_checksum: string, key_fingerprint: number @@ -3034,13 +3049,13 @@ export namespace InputEncryptedFile { export type inputEncryptedFile = { _: 'inputEncryptedFile', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputEncryptedFileBigUploaded = { _: 'inputEncryptedFileBigUploaded', - id: string, + id: string | number, parts: number, key_fingerprint: number }; @@ -3054,7 +3069,7 @@ export type EncryptedMessage = EncryptedMessage.encryptedMessage | EncryptedMess export namespace EncryptedMessage { export type encryptedMessage = { _: 'encryptedMessage', - random_id: string, + random_id: string | number, chat_id: number, date: number, bytes: Uint8Array, @@ -3063,7 +3078,7 @@ export namespace EncryptedMessage { export type encryptedMessageService = { _: 'encryptedMessageService', - random_id: string, + random_id: string | number, chat_id: number, date: number, bytes: Uint8Array @@ -3120,8 +3135,8 @@ export namespace InputDocument { export type inputDocument = { _: 'inputDocument', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[] }; } @@ -3134,14 +3149,14 @@ export type Document = Document.documentEmpty | Document.document; export namespace Document { export type documentEmpty = { _: 'documentEmpty', - id: string + id: string | number }; export type document = { _: 'document', flags?: number, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, file_reference: Uint8Array | number[], date: number, mime_type: string, @@ -3212,7 +3227,7 @@ export namespace NotifyPeer { /** * @link https://core.telegram.org/type/SendMessageAction */ -export type SendMessageAction = SendMessageAction.sendMessageTypingAction | SendMessageAction.sendMessageCancelAction | SendMessageAction.sendMessageRecordVideoAction | SendMessageAction.sendMessageUploadVideoAction | SendMessageAction.sendMessageRecordAudioAction | SendMessageAction.sendMessageUploadAudioAction | SendMessageAction.sendMessageUploadPhotoAction | SendMessageAction.sendMessageUploadDocumentAction | SendMessageAction.sendMessageGeoLocationAction | SendMessageAction.sendMessageChooseContactAction | SendMessageAction.sendMessageGamePlayAction | SendMessageAction.sendMessageRecordRoundAction | SendMessageAction.sendMessageUploadRoundAction | SendMessageAction.speakingInGroupCallAction | SendMessageAction.sendMessageHistoryImportAction; +export type SendMessageAction = SendMessageAction.sendMessageTypingAction | SendMessageAction.sendMessageCancelAction | SendMessageAction.sendMessageRecordVideoAction | SendMessageAction.sendMessageUploadVideoAction | SendMessageAction.sendMessageRecordAudioAction | SendMessageAction.sendMessageUploadAudioAction | SendMessageAction.sendMessageUploadPhotoAction | SendMessageAction.sendMessageUploadDocumentAction | SendMessageAction.sendMessageGeoLocationAction | SendMessageAction.sendMessageChooseContactAction | SendMessageAction.sendMessageGamePlayAction | SendMessageAction.sendMessageRecordRoundAction | SendMessageAction.sendMessageUploadRoundAction | SendMessageAction.speakingInGroupCallAction | SendMessageAction.sendMessageHistoryImportAction | SendMessageAction.sendMessageChooseStickerAction | SendMessageAction.sendMessageEmojiInteraction | SendMessageAction.sendMessageEmojiInteractionSeen; export namespace SendMessageAction { export type sendMessageTypingAction = { @@ -3280,6 +3295,21 @@ export namespace SendMessageAction { _: 'sendMessageHistoryImportAction', progress: number }; + + export type sendMessageChooseStickerAction = { + _: 'sendMessageChooseStickerAction' + }; + + export type sendMessageEmojiInteraction = { + _: 'sendMessageEmojiInteraction', + emoticon: string, + interaction: DataJSON + }; + + export type sendMessageEmojiInteractionSeen = { + _: 'sendMessageEmojiInteractionSeen', + emoticon: string + }; } /** @@ -3409,12 +3439,12 @@ export namespace InputPrivacyRule { export type inputPrivacyValueAllowChatParticipants = { _: 'inputPrivacyValueAllowChatParticipants', - chats: Array + chats: Array }; export type inputPrivacyValueDisallowChatParticipants = { _: 'inputPrivacyValueDisallowChatParticipants', - chats: Array + chats: Array }; } @@ -3434,7 +3464,7 @@ export namespace PrivacyRule { export type privacyValueAllowUsers = { _: 'privacyValueAllowUsers', - users: Array + users: Array }; export type privacyValueDisallowContacts = { @@ -3447,17 +3477,17 @@ export namespace PrivacyRule { export type privacyValueDisallowUsers = { _: 'privacyValueDisallowUsers', - users: Array + users: Array }; export type privacyValueAllowChatParticipants = { _: 'privacyValueAllowChatParticipants', - chats: Array + chats: Array }; export type privacyValueDisallowChatParticipants = { _: 'privacyValueDisallowChatParticipants', - chats: Array + chats: Array }; } @@ -3560,7 +3590,7 @@ export namespace MessagesStickers { export type messagesStickers = { _: 'messages.stickers', - hash: number, + hash: string | number, stickers: Array }; } @@ -3574,7 +3604,7 @@ export namespace StickerPack { export type stickerPack = { _: 'stickerPack', emoticon: string, - documents: Array + documents: Array }; } @@ -3590,7 +3620,7 @@ export namespace MessagesAllStickers { export type messagesAllStickers = { _: 'messages.allStickers', - hash: number, + hash: string | number, sets: Array }; } @@ -3616,19 +3646,19 @@ export type WebPage = WebPage.webPageEmpty | WebPage.webPagePending | WebPage.we export namespace WebPage { export type webPageEmpty = { _: 'webPageEmpty', - id: string + id: string | number }; export type webPagePending = { _: 'webPagePending', - id: string, + id: string | number, date: number }; export type webPage = { _: 'webPage', flags?: number, - id: string, + id: string | number, url: string, display_url: string, hash: number, @@ -3671,7 +3701,7 @@ export namespace Authorization { official_app?: true, password_pending?: true, }>, - hash: string, + hash: string | number, device_model: string, platform: string, system_version: string, @@ -3714,7 +3744,7 @@ export namespace AccountPassword { }>, current_algo?: PasswordKdfAlgo, srp_B?: Uint8Array, - srp_id?: string, + srp_id?: string | number, hint?: string, email_unconfirmed_pattern?: string, new_algo: PasswordKdfAlgo, @@ -3794,7 +3824,7 @@ export namespace ExportedChatInvite { permanent?: true, }>, link: string, - admin_id: number, + admin_id: string | number, date: number, start_date?: number, expire_date?: number, @@ -3848,8 +3878,8 @@ export namespace InputStickerSet { export type inputStickerSetID = { _: 'inputStickerSetID', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputStickerSetShortName = { @@ -3883,8 +3913,8 @@ export namespace StickerSet { animated?: true, }>, installed_date?: number, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, title: string, short_name: string, thumbs?: Array, @@ -3931,7 +3961,7 @@ export type BotInfo = BotInfo.botInfo; export namespace BotInfo { export type botInfo = { _: 'botInfo', - user_id: number, + user_id: string | number, description: string, commands: Array }; @@ -4061,7 +4091,7 @@ export namespace ReplyMarkup { }>, placeholder?: string, mid?: number, - fromId?: number + fromId?: PeerId }; export type replyKeyboardMarkup = { @@ -4076,7 +4106,7 @@ export namespace ReplyMarkup { rows: Array, placeholder?: string, mid?: number, - fromId?: number + fromId?: PeerId }; export type replyInlineMarkup = { @@ -4164,7 +4194,7 @@ export namespace MessageEntity { _: 'messageEntityMentionName', offset: number, length: number, - user_id: number + user_id: string | number }; export type inputMessageEntityMentionName = { @@ -4248,15 +4278,15 @@ export namespace InputChannel { export type inputChannel = { _: 'inputChannel', - channel_id: number, - access_hash: string + channel_id: string | number, + access_hash: string | number }; export type inputChannelFromMessage = { _: 'inputChannelFromMessage', peer: InputPeer, msg_id: number, - channel_id: number + channel_id: string | number }; } @@ -4359,21 +4389,21 @@ export type ChannelParticipant = ChannelParticipant.channelParticipant | Channel export namespace ChannelParticipant { export type channelParticipant = { _: 'channelParticipant', - user_id: number, + user_id: string | number, date: number }; export type channelParticipantSelf = { _: 'channelParticipantSelf', - user_id: number, - inviter_id: number, + user_id: string | number, + inviter_id: string | number, date: number }; export type channelParticipantCreator = { _: 'channelParticipantCreator', flags?: number, - user_id: number, + user_id: string | number, admin_rights: ChatAdminRights, rank?: string }; @@ -4385,9 +4415,9 @@ export namespace ChannelParticipant { can_edit?: true, self?: true, }>, - user_id: number, - inviter_id?: number, - promoted_by: number, + user_id: string | number, + inviter_id?: string | number, + promoted_by: string | number, date: number, admin_rights: ChatAdminRights, rank?: string @@ -4400,7 +4430,7 @@ export namespace ChannelParticipant { left?: true, }>, peer: Peer, - kicked_by: number, + kicked_by: string | number, date: number, banned_rights: ChatBannedRights }; @@ -4521,7 +4551,7 @@ export namespace MessagesSavedGifs { export type messagesSavedGifs = { _: 'messages.savedGifs', - hash: number, + hash: string | number, gifs: Array }; } @@ -4717,7 +4747,7 @@ export namespace BotInlineMessage { description: string, photo?: WebDocument, currency: string, - total_amount: string, + total_amount: string | number, reply_markup?: ReplyMarkup }; } @@ -4766,7 +4796,7 @@ export namespace MessagesBotResults { pFlags?: Partial<{ gallery?: true, }>, - query_id: string, + query_id: string | number, next_offset?: string, switch_pm?: InlineBotSwitchPM, results: Array, @@ -4895,14 +4925,22 @@ export namespace MessagesMessageEditData { /** * @link https://core.telegram.org/type/InputBotInlineMessageID */ -export type InputBotInlineMessageID = InputBotInlineMessageID.inputBotInlineMessageID; +export type InputBotInlineMessageID = InputBotInlineMessageID.inputBotInlineMessageID | InputBotInlineMessageID.inputBotInlineMessageID64; export namespace InputBotInlineMessageID { export type inputBotInlineMessageID = { _: 'inputBotInlineMessageID', dc_id: number, - id: string, - access_hash: string + id: string | number, + access_hash: string | number + }; + + export type inputBotInlineMessageID64 = { + _: 'inputBotInlineMessageID64', + dc_id: number, + owner_id: string | number, + id: number, + access_hash: string | number }; } @@ -5063,10 +5101,10 @@ export namespace MessagesFeaturedStickers { export type messagesFeaturedStickers = { _: 'messages.featuredStickers', - hash: number, + hash: string | number, count: number, sets: Array, - unread: Array + unread: Array }; } @@ -5082,7 +5120,7 @@ export namespace MessagesRecentStickers { export type messagesRecentStickers = { _: 'messages.recentStickers', - hash: number, + hash: string | number, packs: Array, stickers: Array, dates: Array @@ -5178,8 +5216,8 @@ export namespace Game { export type game = { _: 'game', flags?: number, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, short_name: string, title: string, description: string, @@ -5196,8 +5234,8 @@ export type InputGame = InputGame.inputGameID | InputGame.inputGameShortName; export namespace InputGame { export type inputGameID = { _: 'inputGameID', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputGameShortName = { @@ -5216,7 +5254,7 @@ export namespace HighScore { export type highScore = { _: 'highScore', pos: number, - user_id: number, + user_id: string | number, score: number }; } @@ -5278,7 +5316,7 @@ export namespace RichText { _: 'textUrl', text: RichText, url: string, - webpage_id: string + webpage_id: string | number }; export type textEmail = { @@ -5315,7 +5353,7 @@ export namespace RichText { export type textImage = { _: 'textImage', - document_id: string, + document_id: string | number, w: number, h: number }; @@ -5408,10 +5446,10 @@ export namespace PageBlock { export type pageBlockPhoto = { _: 'pageBlockPhoto', flags?: number, - photo_id: string, + photo_id: string | number, caption: PageCaption, url?: string, - webpage_id?: string + webpage_id?: string | number }; export type pageBlockVideo = { @@ -5421,7 +5459,7 @@ export namespace PageBlock { autoplay?: true, loop?: true, }>, - video_id: string, + video_id: string | number, caption: PageCaption }; @@ -5439,7 +5477,7 @@ export namespace PageBlock { }>, url?: string, html?: string, - poster_photo_id?: string, + poster_photo_id?: string | number, w?: number, h?: number, caption: PageCaption @@ -5448,8 +5486,8 @@ export namespace PageBlock { export type pageBlockEmbedPost = { _: 'pageBlockEmbedPost', url: string, - webpage_id: string, - author_photo_id: string, + webpage_id: string | number, + author_photo_id: string | number, author: string, date: number, blocks: Array, @@ -5475,7 +5513,7 @@ export namespace PageBlock { export type pageBlockAudio = { _: 'pageBlockAudio', - audio_id: string, + audio_id: string | number, caption: PageCaption }; @@ -5570,7 +5608,7 @@ export namespace LabeledPrice { export type labeledPrice = { _: 'labeledPrice', label: string, - amount: string + amount: string | number }; } @@ -5595,8 +5633,8 @@ export namespace Invoice { }>, currency: string, prices: Array, - max_tip_amount?: string, - suggested_tip_amounts?: Array + max_tip_amount?: string | number, + suggested_tip_amounts?: Array }; } @@ -5668,7 +5706,7 @@ export namespace WebDocument { export type webDocument = { _: 'webDocument', url: string, - access_hash: string, + access_hash: string | number, size: number, mime_type: string, attributes: Array @@ -5707,13 +5745,13 @@ export namespace InputWebFileLocation { export type inputWebFileLocation = { _: 'inputWebFileLocation', url: string, - access_hash: string + access_hash: string | number }; export type inputWebFileGeoPointLocation = { _: 'inputWebFileGeoPointLocation', geo_point: InputGeoPoint, - access_hash: string, + access_hash: string | number, w: number, h: number, zoom: number, @@ -5750,10 +5788,10 @@ export namespace PaymentsPaymentForm { can_save_credentials?: true, password_missing?: true, }>, - form_id: string, - bot_id: number, + form_id: string | number, + bot_id: string | number, invoice: Invoice, - provider_id: number, + provider_id: string | number, url: string, native_provider?: string, native_params?: DataJSON, @@ -5804,17 +5842,17 @@ export namespace PaymentsPaymentReceipt { _: 'payments.paymentReceipt', flags?: number, date: number, - bot_id: number, - provider_id: number, + bot_id: string | number, + provider_id: string | number, title: string, description: string, photo?: WebDocument, invoice: Invoice, info?: PaymentRequestedInfo, shipping?: ShippingOption, - tip_amount?: string, + tip_amount?: string | number, currency: string, - total_amount: string, + total_amount: string | number, credentials_title: string, users: Array }; @@ -5918,8 +5956,8 @@ export type InputPhoneCall = InputPhoneCall.inputPhoneCall; export namespace InputPhoneCall { export type inputPhoneCall = { _: 'inputPhoneCall', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; } @@ -5931,7 +5969,7 @@ export type PhoneCall = PhoneCall.phoneCallEmpty | PhoneCall.phoneCallWaiting | export namespace PhoneCall { export type phoneCallEmpty = { _: 'phoneCallEmpty', - id: string + id: string | number }; export type phoneCallWaiting = { @@ -5940,11 +5978,11 @@ export namespace PhoneCall { pFlags?: Partial<{ video?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number, + admin_id: string | number, + participant_id: string | number, protocol: PhoneCallProtocol, receive_date?: number }; @@ -5955,11 +5993,11 @@ export namespace PhoneCall { pFlags?: Partial<{ video?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number, + admin_id: string | number, + participant_id: string | number, g_a_hash: Uint8Array, protocol: PhoneCallProtocol }; @@ -5970,11 +6008,11 @@ export namespace PhoneCall { pFlags?: Partial<{ video?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number, + admin_id: string | number, + participant_id: string | number, g_b: Uint8Array, protocol: PhoneCallProtocol }; @@ -5986,13 +6024,13 @@ export namespace PhoneCall { p2p_allowed?: true, video?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, date: number, - admin_id: number, - participant_id: number, + admin_id: string | number, + participant_id: string | number, g_a_or_b: Uint8Array, - key_fingerprint: string, + key_fingerprint: string | number, protocol: PhoneCallProtocol, connections: Array, start_date: number @@ -6006,7 +6044,7 @@ export namespace PhoneCall { need_debug?: true, video?: true, }>, - id: string, + id: string | number, reason?: PhoneCallDiscardReason, duration?: number }; @@ -6020,7 +6058,7 @@ export type PhoneConnection = PhoneConnection.phoneConnection | PhoneConnection. export namespace PhoneConnection { export type phoneConnection = { _: 'phoneConnection', - id: string, + id: string | number, ip: string, ipv6: string, port: number, @@ -6034,7 +6072,7 @@ export namespace PhoneConnection { turn?: true, stun?: true, }>, - id: string, + id: string | number, ip: string, ipv6: string, port: number, @@ -6193,7 +6231,7 @@ export namespace LangPackLanguage { /** * @link https://core.telegram.org/type/ChannelAdminLogEventAction */ -export type ChannelAdminLogEventAction = ChannelAdminLogEventAction.channelAdminLogEventActionChangeTitle | ChannelAdminLogEventAction.channelAdminLogEventActionChangeAbout | ChannelAdminLogEventAction.channelAdminLogEventActionChangeUsername | ChannelAdminLogEventAction.channelAdminLogEventActionChangePhoto | ChannelAdminLogEventAction.channelAdminLogEventActionToggleInvites | ChannelAdminLogEventAction.channelAdminLogEventActionToggleSignatures | ChannelAdminLogEventAction.channelAdminLogEventActionUpdatePinned | ChannelAdminLogEventAction.channelAdminLogEventActionEditMessage | ChannelAdminLogEventAction.channelAdminLogEventActionDeleteMessage | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantJoin | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantLeave | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantInvite | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantToggleBan | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantToggleAdmin | ChannelAdminLogEventAction.channelAdminLogEventActionChangeStickerSet | ChannelAdminLogEventAction.channelAdminLogEventActionTogglePreHistoryHidden | ChannelAdminLogEventAction.channelAdminLogEventActionDefaultBannedRights | ChannelAdminLogEventAction.channelAdminLogEventActionStopPoll | ChannelAdminLogEventAction.channelAdminLogEventActionChangeLinkedChat | ChannelAdminLogEventAction.channelAdminLogEventActionChangeLocation | ChannelAdminLogEventAction.channelAdminLogEventActionToggleSlowMode | ChannelAdminLogEventAction.channelAdminLogEventActionStartGroupCall | ChannelAdminLogEventAction.channelAdminLogEventActionDiscardGroupCall | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantMute | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantUnmute | ChannelAdminLogEventAction.channelAdminLogEventActionToggleGroupCallSetting | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantJoinByInvite | ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteDelete | ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteRevoke | ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteEdit | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantVolume | ChannelAdminLogEventAction.channelAdminLogEventActionChangeHistoryTTL; +export type ChannelAdminLogEventAction = ChannelAdminLogEventAction.channelAdminLogEventActionChangeTitle | ChannelAdminLogEventAction.channelAdminLogEventActionChangeAbout | ChannelAdminLogEventAction.channelAdminLogEventActionChangeUsername | ChannelAdminLogEventAction.channelAdminLogEventActionChangePhoto | ChannelAdminLogEventAction.channelAdminLogEventActionToggleInvites | ChannelAdminLogEventAction.channelAdminLogEventActionToggleSignatures | ChannelAdminLogEventAction.channelAdminLogEventActionUpdatePinned | ChannelAdminLogEventAction.channelAdminLogEventActionEditMessage | ChannelAdminLogEventAction.channelAdminLogEventActionDeleteMessage | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantJoin | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantLeave | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantInvite | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantToggleBan | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantToggleAdmin | ChannelAdminLogEventAction.channelAdminLogEventActionChangeStickerSet | ChannelAdminLogEventAction.channelAdminLogEventActionTogglePreHistoryHidden | ChannelAdminLogEventAction.channelAdminLogEventActionDefaultBannedRights | ChannelAdminLogEventAction.channelAdminLogEventActionStopPoll | ChannelAdminLogEventAction.channelAdminLogEventActionChangeLinkedChat | ChannelAdminLogEventAction.channelAdminLogEventActionChangeLocation | ChannelAdminLogEventAction.channelAdminLogEventActionToggleSlowMode | ChannelAdminLogEventAction.channelAdminLogEventActionStartGroupCall | ChannelAdminLogEventAction.channelAdminLogEventActionDiscardGroupCall | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantMute | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantUnmute | ChannelAdminLogEventAction.channelAdminLogEventActionToggleGroupCallSetting | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantJoinByInvite | ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteDelete | ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteRevoke | ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteEdit | ChannelAdminLogEventAction.channelAdminLogEventActionParticipantVolume | ChannelAdminLogEventAction.channelAdminLogEventActionChangeHistoryTTL | ChannelAdminLogEventAction.channelAdminLogEventActionChangeTheme; export namespace ChannelAdminLogEventAction { export type channelAdminLogEventActionChangeTitle = { @@ -6295,8 +6333,8 @@ export namespace ChannelAdminLogEventAction { export type channelAdminLogEventActionChangeLinkedChat = { _: 'channelAdminLogEventActionChangeLinkedChat', - prev_value: number, - new_value: number + prev_value: string | number, + new_value: string | number }; export type channelAdminLogEventActionChangeLocation = { @@ -6367,6 +6405,12 @@ export namespace ChannelAdminLogEventAction { prev_value: number, new_value: number }; + + export type channelAdminLogEventActionChangeTheme = { + _: 'channelAdminLogEventActionChangeTheme', + prev_value: string, + new_value: string + }; } /** @@ -6377,9 +6421,9 @@ export type ChannelAdminLogEvent = ChannelAdminLogEvent.channelAdminLogEvent; export namespace ChannelAdminLogEvent { export type channelAdminLogEvent = { _: 'channelAdminLogEvent', - id: string, + id: string | number, date: number, - user_id: number, + user_id: string | number, action: ChannelAdminLogEventAction }; } @@ -6436,7 +6480,7 @@ export type PopularContact = PopularContact.popularContact; export namespace PopularContact { export type popularContact = { _: 'popularContact', - client_id: string, + client_id: string | number, importers: number }; } @@ -6453,7 +6497,7 @@ export namespace MessagesFavedStickers { export type messagesFavedStickers = { _: 'messages.favedStickers', - hash: number, + hash: string | number, packs: Array, stickers: Array }; @@ -6473,13 +6517,13 @@ export namespace RecentMeUrl { export type recentMeUrlUser = { _: 'recentMeUrlUser', url: string, - user_id: number + user_id: string | number }; export type recentMeUrlChat = { _: 'recentMeUrlChat', url: string, - chat_id: number + chat_id: string | number }; export type recentMeUrlChatInvite = { @@ -6519,7 +6563,7 @@ export namespace InputSingleMedia { _: 'inputSingleMedia', flags?: number, media: InputMedia, - random_id: string, + random_id: string | number, message: string, entities?: Array }; @@ -6533,8 +6577,8 @@ export type WebAuthorization = WebAuthorization.webAuthorization; export namespace WebAuthorization { export type webAuthorization = { _: 'webAuthorization', - hash: string, - bot_id: number, + hash: string | number, + bot_id: string | number, domain: string, browser: string, platform: string, @@ -6581,7 +6625,7 @@ export namespace InputMessage { export type inputMessageCallbackQuery = { _: 'inputMessageCallbackQuery', id: number, - query_id: string + query_id: string | number }; } @@ -6631,7 +6675,7 @@ export namespace MessagesFoundStickerSets { export type messagesFoundStickerSets = { _: 'messages.foundStickerSets', - hash: number, + hash: string | number, sets: Array }; } @@ -6689,7 +6733,7 @@ export type InputSecureFile = InputSecureFile.inputSecureFileUploaded | InputSec export namespace InputSecureFile { export type inputSecureFileUploaded = { _: 'inputSecureFileUploaded', - id: string, + id: string | number, parts: number, md5_checksum: string, file_hash: Uint8Array, @@ -6698,8 +6742,8 @@ export namespace InputSecureFile { export type inputSecureFile = { _: 'inputSecureFile', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; } @@ -6715,8 +6759,8 @@ export namespace SecureFile { export type secureFile = { _: 'secureFile', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, size: number, dc_id: number, date: number, @@ -7028,7 +7072,7 @@ export type AccountTakeout = AccountTakeout.accountTakeout; export namespace AccountTakeout { export type accountTakeout = { _: 'account.takeout', - id: string + id: string | number }; } @@ -7082,7 +7126,7 @@ export namespace SecureSecretSettings { _: 'secureSecretSettings', secure_algo: SecurePasswordKdfAlgo, secure_secret: Uint8Array, - secure_secret_id: string + secure_secret_id: string | number }; } @@ -7098,7 +7142,7 @@ export namespace InputCheckPasswordSRP { export type inputCheckPasswordSRP = { _: 'inputCheckPasswordSRP', - srp_id: string, + srp_id: string | number, A: Uint8Array, M1: Uint8Array }; @@ -7154,7 +7198,7 @@ export namespace InputAppEvent { _: 'inputAppEvent', time: number, type: string, - peer: string, + peer: string | number, data: JSONValue }; } @@ -7301,10 +7345,10 @@ export namespace PageRelatedArticle { _: 'pageRelatedArticle', flags?: number, url: string, - webpage_id: string, + webpage_id: string | number, title?: string, description?: string, - photo_id?: string, + photo_id?: string | number, author?: string, published_date?: number }; @@ -7384,7 +7428,7 @@ export type Poll = Poll.poll; export namespace Poll { export type poll = { _: 'poll', - id: string, + id: string | number, flags?: number, pFlags?: Partial<{ closed?: true, @@ -7395,7 +7439,10 @@ export namespace Poll { question: string, answers: Array, close_period?: number, - close_date?: number + close_date?: number, + rQuestion?: string, + rReply?: string, + chosenIndexes?: number[] }; } @@ -7431,7 +7478,7 @@ export namespace PollResults { }>, results?: Array, total_voters?: number, - recent_voters?: Array, + recent_voters?: Array, solution?: string, solution_entities?: Array }; @@ -7521,8 +7568,8 @@ export type InputWallPaper = InputWallPaper.inputWallPaper | InputWallPaper.inpu export namespace InputWallPaper { export type inputWallPaper = { _: 'inputWallPaper', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputWallPaperSlug = { @@ -7532,7 +7579,7 @@ export namespace InputWallPaper { export type inputWallPaperNoFile = { _: 'inputWallPaperNoFile', - id: string + id: string | number }; } @@ -7548,7 +7595,7 @@ export namespace AccountWallPapers { export type accountWallPapers = { _: 'account.wallPapers', - hash: number, + hash: string | number, wallpapers: Array }; } @@ -7833,8 +7880,8 @@ export type InputTheme = InputTheme.inputTheme | InputTheme.inputThemeSlug; export namespace InputTheme { export type inputTheme = { _: 'inputTheme', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; export type inputThemeSlug = { @@ -7855,14 +7902,15 @@ export namespace Theme { pFlags?: Partial<{ creator?: true, default?: true, + for_chat?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, slug: string, title: string, document?: Document, settings?: ThemeSettings, - installs_count: number + installs_count?: number }; } @@ -7878,7 +7926,7 @@ export namespace AccountThemes { export type accountThemes = { _: 'account.themes', - hash: number, + hash: string | number, themes: Array }; } @@ -7973,10 +8021,13 @@ export namespace InputThemeSettings { export type inputThemeSettings = { _: 'inputThemeSettings', flags?: number, + pFlags?: Partial<{ + message_colors_animated?: true, + }>, base_theme: BaseTheme, accent_color: number, - message_top_color?: number, - message_bottom_color?: number, + outbox_accent_color?: number, + message_colors?: Array, wallpaper?: InputWallPaper, wallpaper_settings?: WallPaperSettings }; @@ -7991,10 +8042,13 @@ export namespace ThemeSettings { export type themeSettings = { _: 'themeSettings', flags?: number, + pFlags?: Partial<{ + message_colors_animated?: true, + }>, base_theme: BaseTheme, accent_color: number, - message_top_color?: number, - message_bottom_color?: number, + outbox_accent_color?: number, + message_colors?: Array, wallpaper?: WallPaper }; } @@ -8021,20 +8075,20 @@ export type MessageUserVote = MessageUserVote.messageUserVote | MessageUserVote. export namespace MessageUserVote { export type messageUserVote = { _: 'messageUserVote', - user_id: number, + user_id: string | number, option: Uint8Array, date: number }; export type messageUserVoteInputOption = { _: 'messageUserVoteInputOption', - user_id: number, + user_id: string | number, date: number }; export type messageUserVoteMultiple = { _: 'messageUserVoteMultiple', - user_id: number, + user_id: string | number, options: Array, date: number }; @@ -8108,7 +8162,7 @@ export namespace DialogFilter { include_peers: Array, exclude_peers: Array, orderIndex?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10, - peerId?: number, + peerId?: PeerId, folder_id?: number }; } @@ -8280,7 +8334,7 @@ export type StatsGroupTopPoster = StatsGroupTopPoster.statsGroupTopPoster; export namespace StatsGroupTopPoster { export type statsGroupTopPoster = { _: 'statsGroupTopPoster', - user_id: number, + user_id: string | number, messages: number, avg_chars: number }; @@ -8294,7 +8348,7 @@ export type StatsGroupTopAdmin = StatsGroupTopAdmin.statsGroupTopAdmin; export namespace StatsGroupTopAdmin { export type statsGroupTopAdmin = { _: 'statsGroupTopAdmin', - user_id: number, + user_id: string | number, deleted: number, kicked: number, banned: number @@ -8309,7 +8363,7 @@ export type StatsGroupTopInviter = StatsGroupTopInviter.statsGroupTopInviter; export namespace StatsGroupTopInviter { export type statsGroupTopInviter = { _: 'statsGroupTopInviter', - user_id: number, + user_id: string | number, invitations: number }; } @@ -8448,6 +8502,7 @@ export namespace MessagesDiscussionMessage { max_id?: number, read_inbox_max_id?: number, read_outbox_max_id?: number, + unread_count: number, chats: Array, users: Array }; @@ -8483,7 +8538,7 @@ export namespace MessageReplies { replies: number, replies_pts: number, recent_repliers?: Array, - channel_id?: number, + channel_id?: string | number, max_id?: number, read_max_id?: number }; @@ -8522,8 +8577,8 @@ export type GroupCall = GroupCall.groupCallDiscarded | GroupCall.groupCall; export namespace GroupCall { export type groupCallDiscarded = { _: 'groupCallDiscarded', - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, duration: number }; @@ -8536,9 +8591,10 @@ export namespace GroupCall { join_date_asc?: true, schedule_start_subscribed?: true, can_start_video?: true, + record_video_active?: true, }>, - id: string, - access_hash: string, + id: string | number, + access_hash: string | number, participants_count: number, title?: string, stream_dc_id?: number, @@ -8558,8 +8614,8 @@ export type InputGroupCall = InputGroupCall.inputGroupCall; export namespace InputGroupCall { export type inputGroupCall = { _: 'inputGroupCall', - id: string, - access_hash: string + id: string | number, + access_hash: string | number }; } @@ -8590,7 +8646,7 @@ export namespace GroupCallParticipant { source: number, volume?: number, about?: string, - raise_hand_rating?: string, + raise_hand_rating?: string | number, video?: GroupCallParticipantVideo, presentation?: GroupCallParticipantVideo }; @@ -8664,7 +8720,7 @@ export type MessagesHistoryImport = MessagesHistoryImport.messagesHistoryImport; export namespace MessagesHistoryImport { export type messagesHistoryImport = { _: 'messages.historyImport', - id: string + id: string | number }; } @@ -8708,7 +8764,7 @@ export type ChatInviteImporter = ChatInviteImporter.chatInviteImporter; export namespace ChatInviteImporter { export type chatInviteImporter = { _: 'chatInviteImporter', - user_id: number, + user_id: string | number, date: number }; } @@ -8769,7 +8825,7 @@ export type ChatAdminWithInvites = ChatAdminWithInvites.chatAdminWithInvites; export namespace ChatAdminWithInvites { export type chatAdminWithInvites = { _: 'chatAdminWithInvites', - admin_id: number, + admin_id: string | number, invites_count: number, revoked_invites_count: number }; @@ -8929,20 +8985,99 @@ export namespace AccountResetPasswordResult { }; } +/** + * @link https://core.telegram.org/type/ChatTheme + */ +export type ChatTheme = ChatTheme.chatTheme; + +export namespace ChatTheme { + export type chatTheme = { + _: 'chatTheme', + emoticon: string, + theme: Theme, + dark_theme: Theme + }; +} + +/** + * @link https://core.telegram.org/type/account.ChatThemes + */ +export type AccountChatThemes = AccountChatThemes.accountChatThemesNotModified | AccountChatThemes.accountChatThemes; + +export namespace AccountChatThemes { + export type accountChatThemesNotModified = { + _: 'account.chatThemesNotModified' + }; + + export type accountChatThemes = { + _: 'account.chatThemes', + hash: number, + themes: Array + }; +} + +/** + * @link https://core.telegram.org/type/SponsoredMessage + */ +export type SponsoredMessage = SponsoredMessage.sponsoredMessage; + +export namespace SponsoredMessage { + export type sponsoredMessage = { + _: 'sponsoredMessage', + flags?: number, + random_id: Uint8Array, + from_id: Peer, + start_param?: string, + message: string, + entities?: Array + }; +} + +/** + * @link https://core.telegram.org/type/messages.SponsoredMessages + */ +export type MessagesSponsoredMessages = MessagesSponsoredMessages.messagesSponsoredMessages; + +export namespace MessagesSponsoredMessages { + export type messagesSponsoredMessages = { + _: 'messages.sponsoredMessages', + messages: Array, + chats: Array, + users: Array + }; +} + export interface ConstructorDeclMap { 'error': Error.error, 'inputPeerEmpty': InputPeer.inputPeerEmpty, 'inputPeerSelf': InputPeer.inputPeerSelf, 'inputPeerChat': InputPeer.inputPeerChat, + 'inputPeerUser': InputPeer.inputPeerUser, + 'inputPeerChannel': InputPeer.inputPeerChannel, + 'inputPeerUserFromMessage': InputPeer.inputPeerUserFromMessage, + 'inputPeerChannelFromMessage': InputPeer.inputPeerChannelFromMessage, 'inputUserEmpty': InputUser.inputUserEmpty, 'inputUserSelf': InputUser.inputUserSelf, + 'inputUser': InputUser.inputUser, + 'inputUserFromMessage': InputUser.inputUserFromMessage, 'inputPhoneContact': InputContact.inputPhoneContact, 'inputFile': InputFile.inputFile, + 'inputFileBig': InputFile.inputFileBig, 'inputMediaEmpty': InputMedia.inputMediaEmpty, 'inputMediaUploadedPhoto': InputMedia.inputMediaUploadedPhoto, 'inputMediaPhoto': InputMedia.inputMediaPhoto, 'inputMediaGeoPoint': InputMedia.inputMediaGeoPoint, 'inputMediaContact': InputMedia.inputMediaContact, + 'inputMediaUploadedDocument': InputMedia.inputMediaUploadedDocument, + 'inputMediaDocument': InputMedia.inputMediaDocument, + 'inputMediaVenue': InputMedia.inputMediaVenue, + 'inputMediaPhotoExternal': InputMedia.inputMediaPhotoExternal, + 'inputMediaDocumentExternal': InputMedia.inputMediaDocumentExternal, + 'inputMediaGame': InputMedia.inputMediaGame, + 'inputMediaInvoice': InputMedia.inputMediaInvoice, + 'inputMediaGeoLive': InputMedia.inputMediaGeoLive, + 'inputMediaPoll': InputMedia.inputMediaPoll, + 'inputMediaDice': InputMedia.inputMediaDice, 'inputChatPhotoEmpty': InputChatPhoto.inputChatPhotoEmpty, 'inputChatUploadedPhoto': InputChatPhoto.inputChatUploadedPhoto, 'inputChatPhoto': InputChatPhoto.inputChatPhoto, @@ -8951,8 +9086,18 @@ export interface ConstructorDeclMap { 'inputPhotoEmpty': InputPhoto.inputPhotoEmpty, 'inputPhoto': InputPhoto.inputPhoto, 'inputFileLocation': InputFileLocation.inputFileLocation, + 'inputEncryptedFileLocation': InputFileLocation.inputEncryptedFileLocation, + 'inputDocumentFileLocation': InputFileLocation.inputDocumentFileLocation, + 'inputSecureFileLocation': InputFileLocation.inputSecureFileLocation, + 'inputTakeoutFileLocation': InputFileLocation.inputTakeoutFileLocation, + 'inputPhotoFileLocation': InputFileLocation.inputPhotoFileLocation, + 'inputPhotoLegacyFileLocation': InputFileLocation.inputPhotoLegacyFileLocation, + 'inputPeerPhotoFileLocation': InputFileLocation.inputPeerPhotoFileLocation, + 'inputStickerSetThumb': InputFileLocation.inputStickerSetThumb, + 'inputGroupCallStream': InputFileLocation.inputGroupCallStream, 'peerUser': Peer.peerUser, 'peerChat': Peer.peerChat, + 'peerChannel': Peer.peerChannel, 'storage.fileUnknown': StorageFileType.storageFileUnknown, 'storage.filePartial': StorageFileType.storageFilePartial, 'storage.fileJpeg': StorageFileType.storageFileJpeg, @@ -8964,16 +9109,25 @@ export interface ConstructorDeclMap { 'storage.fileMp4': StorageFileType.storageFileMp4, 'storage.fileWebp': StorageFileType.storageFileWebp, 'userEmpty': User.userEmpty, + 'user': User.user, 'userProfilePhotoEmpty': UserProfilePhoto.userProfilePhotoEmpty, 'userProfilePhoto': UserProfilePhoto.userProfilePhoto, 'userStatusEmpty': UserStatus.userStatusEmpty, 'userStatusOnline': UserStatus.userStatusOnline, 'userStatusOffline': UserStatus.userStatusOffline, + 'userStatusRecently': UserStatus.userStatusRecently, + 'userStatusLastWeek': UserStatus.userStatusLastWeek, + 'userStatusLastMonth': UserStatus.userStatusLastMonth, 'chatEmpty': Chat.chatEmpty, 'chat': Chat.chat, 'chatForbidden': Chat.chatForbidden, + 'channel': Chat.channel, + 'channelForbidden': Chat.channelForbidden, 'chatFull': ChatFull.chatFull, + 'channelFull': ChatFull.channelFull, 'chatParticipant': ChatParticipant.chatParticipant, + 'chatParticipantCreator': ChatParticipant.chatParticipantCreator, + 'chatParticipantAdmin': ChatParticipant.chatParticipantAdmin, 'chatParticipantsForbidden': ChatParticipants.chatParticipantsForbidden, 'chatParticipants': ChatParticipants.chatParticipants, 'chatPhotoEmpty': ChatPhoto.chatPhotoEmpty, @@ -8986,6 +9140,14 @@ export interface ConstructorDeclMap { 'messageMediaGeo': MessageMedia.messageMediaGeo, 'messageMediaContact': MessageMedia.messageMediaContact, 'messageMediaUnsupported': MessageMedia.messageMediaUnsupported, + 'messageMediaDocument': MessageMedia.messageMediaDocument, + 'messageMediaWebPage': MessageMedia.messageMediaWebPage, + 'messageMediaVenue': MessageMedia.messageMediaVenue, + 'messageMediaGame': MessageMedia.messageMediaGame, + 'messageMediaInvoice': MessageMedia.messageMediaInvoice, + 'messageMediaGeoLive': MessageMedia.messageMediaGeoLive, + 'messageMediaPoll': MessageMedia.messageMediaPoll, + 'messageMediaDice': MessageMedia.messageMediaDice, 'messageActionEmpty': MessageAction.messageActionEmpty, 'messageActionChatCreate': MessageAction.messageActionChatCreate, 'messageActionChatEditTitle': MessageAction.messageActionChatEditTitle, @@ -8993,29 +9155,61 @@ export interface ConstructorDeclMap { 'messageActionChatDeletePhoto': MessageAction.messageActionChatDeletePhoto, 'messageActionChatAddUser': MessageAction.messageActionChatAddUser, 'messageActionChatDeleteUser': MessageAction.messageActionChatDeleteUser, + 'messageActionChatJoinedByLink': MessageAction.messageActionChatJoinedByLink, + 'messageActionChannelCreate': MessageAction.messageActionChannelCreate, + 'messageActionChatMigrateTo': MessageAction.messageActionChatMigrateTo, + 'messageActionChannelMigrateFrom': MessageAction.messageActionChannelMigrateFrom, + 'messageActionPinMessage': MessageAction.messageActionPinMessage, + 'messageActionHistoryClear': MessageAction.messageActionHistoryClear, + 'messageActionGameScore': MessageAction.messageActionGameScore, + 'messageActionPaymentSentMe': MessageAction.messageActionPaymentSentMe, + 'messageActionPaymentSent': MessageAction.messageActionPaymentSent, + 'messageActionPhoneCall': MessageAction.messageActionPhoneCall, + 'messageActionScreenshotTaken': MessageAction.messageActionScreenshotTaken, + 'messageActionCustomAction': MessageAction.messageActionCustomAction, + 'messageActionBotAllowed': MessageAction.messageActionBotAllowed, + 'messageActionSecureValuesSentMe': MessageAction.messageActionSecureValuesSentMe, + 'messageActionSecureValuesSent': MessageAction.messageActionSecureValuesSent, + 'messageActionContactSignUp': MessageAction.messageActionContactSignUp, + 'messageActionGeoProximityReached': MessageAction.messageActionGeoProximityReached, + 'messageActionGroupCall': MessageAction.messageActionGroupCall, + 'messageActionInviteToGroupCall': MessageAction.messageActionInviteToGroupCall, + 'messageActionSetMessagesTTL': MessageAction.messageActionSetMessagesTTL, + 'messageActionGroupCallScheduled': MessageAction.messageActionGroupCallScheduled, + 'messageActionSetChatTheme': MessageAction.messageActionSetChatTheme, 'dialog': Dialog.dialog, + 'dialogFolder': Dialog.dialogFolder, 'photoEmpty': Photo.photoEmpty, 'photo': Photo.photo, 'photoSizeEmpty': PhotoSize.photoSizeEmpty, 'photoSize': PhotoSize.photoSize, 'photoCachedSize': PhotoSize.photoCachedSize, + 'photoStrippedSize': PhotoSize.photoStrippedSize, + 'photoSizeProgressive': PhotoSize.photoSizeProgressive, + 'photoPathSize': PhotoSize.photoPathSize, 'geoPointEmpty': GeoPoint.geoPointEmpty, 'geoPoint': GeoPoint.geoPoint, 'auth.sentCode': AuthSentCode.authSentCode, 'auth.authorization': AuthAuthorization.authAuthorization, + 'auth.authorizationSignUpRequired': AuthAuthorization.authAuthorizationSignUpRequired, 'auth.exportedAuthorization': AuthExportedAuthorization.authExportedAuthorization, 'inputNotifyPeer': InputNotifyPeer.inputNotifyPeer, 'inputNotifyUsers': InputNotifyPeer.inputNotifyUsers, 'inputNotifyChats': InputNotifyPeer.inputNotifyChats, + 'inputNotifyBroadcasts': InputNotifyPeer.inputNotifyBroadcasts, 'inputPeerNotifySettings': InputPeerNotifySettings.inputPeerNotifySettings, 'peerNotifySettings': PeerNotifySettings.peerNotifySettings, 'peerSettings': PeerSettings.peerSettings, 'wallPaper': WallPaper.wallPaper, + 'wallPaperNoFile': WallPaper.wallPaperNoFile, 'inputReportReasonSpam': ReportReason.inputReportReasonSpam, 'inputReportReasonViolence': ReportReason.inputReportReasonViolence, 'inputReportReasonPornography': ReportReason.inputReportReasonPornography, 'inputReportReasonChildAbuse': ReportReason.inputReportReasonChildAbuse, 'inputReportReasonOther': ReportReason.inputReportReasonOther, + 'inputReportReasonCopyright': ReportReason.inputReportReasonCopyright, + 'inputReportReasonGeoIrrelevant': ReportReason.inputReportReasonGeoIrrelevant, + 'inputReportReasonFake': ReportReason.inputReportReasonFake, 'userFull': UserFull.userFull, 'contact': Contact.contact, 'importedContact': ImportedContact.importedContact, @@ -9027,9 +9221,13 @@ export interface ConstructorDeclMap { 'contacts.blockedSlice': ContactsBlocked.contactsBlockedSlice, 'messages.dialogs': MessagesDialogs.messagesDialogs, 'messages.dialogsSlice': MessagesDialogs.messagesDialogsSlice, + 'messages.dialogsNotModified': MessagesDialogs.messagesDialogsNotModified, 'messages.messages': MessagesMessages.messagesMessages, 'messages.messagesSlice': MessagesMessages.messagesMessagesSlice, + 'messages.channelMessages': MessagesMessages.messagesChannelMessages, + 'messages.messagesNotModified': MessagesMessages.messagesMessagesNotModified, 'messages.chats': MessagesChats.messagesChats, + 'messages.chatsSlice': MessagesChats.messagesChatsSlice, 'messages.chatFull': MessagesChatFull.messagesChatFull, 'messages.affectedHistory': MessagesAffectedHistory.messagesAffectedHistory, 'inputMessagesFilterEmpty': MessagesFilter.inputMessagesFilterEmpty, @@ -9039,6 +9237,16 @@ export interface ConstructorDeclMap { 'inputMessagesFilterDocument': MessagesFilter.inputMessagesFilterDocument, 'inputMessagesFilterUrl': MessagesFilter.inputMessagesFilterUrl, 'inputMessagesFilterGif': MessagesFilter.inputMessagesFilterGif, + 'inputMessagesFilterVoice': MessagesFilter.inputMessagesFilterVoice, + 'inputMessagesFilterMusic': MessagesFilter.inputMessagesFilterMusic, + 'inputMessagesFilterChatPhotos': MessagesFilter.inputMessagesFilterChatPhotos, + 'inputMessagesFilterPhoneCalls': MessagesFilter.inputMessagesFilterPhoneCalls, + 'inputMessagesFilterRoundVoice': MessagesFilter.inputMessagesFilterRoundVoice, + 'inputMessagesFilterRoundVideo': MessagesFilter.inputMessagesFilterRoundVideo, + 'inputMessagesFilterMyMentions': MessagesFilter.inputMessagesFilterMyMentions, + 'inputMessagesFilterGeo': MessagesFilter.inputMessagesFilterGeo, + 'inputMessagesFilterContacts': MessagesFilter.inputMessagesFilterContacts, + 'inputMessagesFilterPinned': MessagesFilter.inputMessagesFilterPinned, 'updateNewMessage': Update.updateNewMessage, 'updateMessageID': Update.updateMessageID, 'updateDeleteMessages': Update.updateDeleteMessages, @@ -9048,30 +9256,113 @@ export interface ConstructorDeclMap { 'updateUserStatus': Update.updateUserStatus, 'updateUserName': Update.updateUserName, 'updateUserPhoto': Update.updateUserPhoto, + 'updateNewEncryptedMessage': Update.updateNewEncryptedMessage, + 'updateEncryptedChatTyping': Update.updateEncryptedChatTyping, + 'updateEncryption': Update.updateEncryption, + 'updateEncryptedMessagesRead': Update.updateEncryptedMessagesRead, + 'updateChatParticipantAdd': Update.updateChatParticipantAdd, + 'updateChatParticipantDelete': Update.updateChatParticipantDelete, + 'updateDcOptions': Update.updateDcOptions, + 'updateNotifySettings': Update.updateNotifySettings, + 'updateServiceNotification': Update.updateServiceNotification, + 'updatePrivacy': Update.updatePrivacy, + 'updateUserPhone': Update.updateUserPhone, + 'updateReadHistoryInbox': Update.updateReadHistoryInbox, + 'updateReadHistoryOutbox': Update.updateReadHistoryOutbox, + 'updateWebPage': Update.updateWebPage, + 'updateReadMessagesContents': Update.updateReadMessagesContents, + 'updateChannelTooLong': Update.updateChannelTooLong, + 'updateChannel': Update.updateChannel, + 'updateNewChannelMessage': Update.updateNewChannelMessage, + 'updateReadChannelInbox': Update.updateReadChannelInbox, + 'updateDeleteChannelMessages': Update.updateDeleteChannelMessages, + 'updateChannelMessageViews': Update.updateChannelMessageViews, + 'updateChatParticipantAdmin': Update.updateChatParticipantAdmin, + 'updateNewStickerSet': Update.updateNewStickerSet, + 'updateStickerSetsOrder': Update.updateStickerSetsOrder, + 'updateStickerSets': Update.updateStickerSets, + 'updateSavedGifs': Update.updateSavedGifs, + 'updateBotInlineQuery': Update.updateBotInlineQuery, + 'updateBotInlineSend': Update.updateBotInlineSend, + 'updateEditChannelMessage': Update.updateEditChannelMessage, + 'updateBotCallbackQuery': Update.updateBotCallbackQuery, + 'updateEditMessage': Update.updateEditMessage, + 'updateInlineBotCallbackQuery': Update.updateInlineBotCallbackQuery, + 'updateReadChannelOutbox': Update.updateReadChannelOutbox, + 'updateDraftMessage': Update.updateDraftMessage, + 'updateReadFeaturedStickers': Update.updateReadFeaturedStickers, + 'updateRecentStickers': Update.updateRecentStickers, + 'updateConfig': Update.updateConfig, + 'updatePtsChanged': Update.updatePtsChanged, + 'updateChannelWebPage': Update.updateChannelWebPage, + 'updateDialogPinned': Update.updateDialogPinned, + 'updatePinnedDialogs': Update.updatePinnedDialogs, + 'updateBotWebhookJSON': Update.updateBotWebhookJSON, + 'updateBotWebhookJSONQuery': Update.updateBotWebhookJSONQuery, + 'updateBotShippingQuery': Update.updateBotShippingQuery, + 'updateBotPrecheckoutQuery': Update.updateBotPrecheckoutQuery, + 'updatePhoneCall': Update.updatePhoneCall, + 'updateLangPackTooLong': Update.updateLangPackTooLong, + 'updateLangPack': Update.updateLangPack, + 'updateFavedStickers': Update.updateFavedStickers, + 'updateChannelReadMessagesContents': Update.updateChannelReadMessagesContents, + 'updateContactsReset': Update.updateContactsReset, + 'updateChannelAvailableMessages': Update.updateChannelAvailableMessages, + 'updateDialogUnreadMark': Update.updateDialogUnreadMark, + 'updateMessagePoll': Update.updateMessagePoll, + 'updateChatDefaultBannedRights': Update.updateChatDefaultBannedRights, + 'updateFolderPeers': Update.updateFolderPeers, + 'updatePeerSettings': Update.updatePeerSettings, + 'updatePeerLocated': Update.updatePeerLocated, + 'updateNewScheduledMessage': Update.updateNewScheduledMessage, + 'updateDeleteScheduledMessages': Update.updateDeleteScheduledMessages, + 'updateTheme': Update.updateTheme, + 'updateGeoLiveViewed': Update.updateGeoLiveViewed, + 'updateLoginToken': Update.updateLoginToken, + 'updateMessagePollVote': Update.updateMessagePollVote, + 'updateDialogFilter': Update.updateDialogFilter, + 'updateDialogFilterOrder': Update.updateDialogFilterOrder, + 'updateDialogFilters': Update.updateDialogFilters, + 'updatePhoneCallSignalingData': Update.updatePhoneCallSignalingData, + 'updateChannelMessageForwards': Update.updateChannelMessageForwards, + 'updateReadChannelDiscussionInbox': Update.updateReadChannelDiscussionInbox, + 'updateReadChannelDiscussionOutbox': Update.updateReadChannelDiscussionOutbox, + 'updatePeerBlocked': Update.updatePeerBlocked, + 'updateChannelUserTyping': Update.updateChannelUserTyping, + 'updatePinnedMessages': Update.updatePinnedMessages, + 'updatePinnedChannelMessages': Update.updatePinnedChannelMessages, + 'updateChat': Update.updateChat, + 'updateGroupCallParticipants': Update.updateGroupCallParticipants, + 'updateGroupCall': Update.updateGroupCall, + 'updatePeerHistoryTTL': Update.updatePeerHistoryTTL, + 'updateChatParticipant': Update.updateChatParticipant, + 'updateChannelParticipant': Update.updateChannelParticipant, + 'updateBotStopped': Update.updateBotStopped, + 'updateGroupCallConnection': Update.updateGroupCallConnection, + 'updateBotCommands': Update.updateBotCommands, 'updates.state': UpdatesState.updatesState, 'updates.differenceEmpty': UpdatesDifference.updatesDifferenceEmpty, 'updates.difference': UpdatesDifference.updatesDifference, 'updates.differenceSlice': UpdatesDifference.updatesDifferenceSlice, + 'updates.differenceTooLong': UpdatesDifference.updatesDifferenceTooLong, 'updatesTooLong': Updates.updatesTooLong, 'updateShortMessage': Updates.updateShortMessage, 'updateShortChatMessage': Updates.updateShortChatMessage, 'updateShort': Updates.updateShort, 'updatesCombined': Updates.updatesCombined, 'updates': Updates.updates, + 'updateShortSentMessage': Updates.updateShortSentMessage, 'photos.photos': PhotosPhotos.photosPhotos, 'photos.photosSlice': PhotosPhotos.photosPhotosSlice, 'photos.photo': PhotosPhoto.photosPhoto, 'upload.file': UploadFile.uploadFile, + 'upload.fileCdnRedirect': UploadFile.uploadFileCdnRedirect, 'dcOption': DcOption.dcOption, 'config': Config.config, 'nearestDc': NearestDc.nearestDc, 'help.appUpdate': HelpAppUpdate.helpAppUpdate, 'help.noAppUpdate': HelpAppUpdate.helpNoAppUpdate, 'help.inviteText': HelpInviteText.helpInviteText, - 'updateNewEncryptedMessage': Update.updateNewEncryptedMessage, - 'updateEncryptedChatTyping': Update.updateEncryptedChatTyping, - 'updateEncryption': Update.updateEncryption, - 'updateEncryptedMessagesRead': Update.updateEncryptedMessagesRead, 'encryptedChatEmpty': EncryptedChat.encryptedChatEmpty, 'encryptedChatWaiting': EncryptedChat.encryptedChatWaiting, 'encryptedChatRequested': EncryptedChat.encryptedChatRequested, @@ -9083,31 +9374,22 @@ export interface ConstructorDeclMap { 'inputEncryptedFileEmpty': InputEncryptedFile.inputEncryptedFileEmpty, 'inputEncryptedFileUploaded': InputEncryptedFile.inputEncryptedFileUploaded, 'inputEncryptedFile': InputEncryptedFile.inputEncryptedFile, - 'inputEncryptedFileLocation': InputFileLocation.inputEncryptedFileLocation, + 'inputEncryptedFileBigUploaded': InputEncryptedFile.inputEncryptedFileBigUploaded, 'encryptedMessage': EncryptedMessage.encryptedMessage, 'encryptedMessageService': EncryptedMessage.encryptedMessageService, 'messages.dhConfigNotModified': MessagesDhConfig.messagesDhConfigNotModified, 'messages.dhConfig': MessagesDhConfig.messagesDhConfig, 'messages.sentEncryptedMessage': MessagesSentEncryptedMessage.messagesSentEncryptedMessage, 'messages.sentEncryptedFile': MessagesSentEncryptedMessage.messagesSentEncryptedFile, - 'inputFileBig': InputFile.inputFileBig, - 'inputEncryptedFileBigUploaded': InputEncryptedFile.inputEncryptedFileBigUploaded, - 'updateChatParticipantAdd': Update.updateChatParticipantAdd, - 'updateChatParticipantDelete': Update.updateChatParticipantDelete, - 'updateDcOptions': Update.updateDcOptions, - 'inputMediaUploadedDocument': InputMedia.inputMediaUploadedDocument, - 'inputMediaDocument': InputMedia.inputMediaDocument, - 'messageMediaDocument': MessageMedia.messageMediaDocument, 'inputDocumentEmpty': InputDocument.inputDocumentEmpty, 'inputDocument': InputDocument.inputDocument, - 'inputDocumentFileLocation': InputFileLocation.inputDocumentFileLocation, 'documentEmpty': Document.documentEmpty, 'document': Document.document, 'help.support': HelpSupport.helpSupport, 'notifyPeer': NotifyPeer.notifyPeer, 'notifyUsers': NotifyPeer.notifyUsers, 'notifyChats': NotifyPeer.notifyChats, - 'updateNotifySettings': Update.updateNotifySettings, + 'notifyBroadcasts': NotifyPeer.notifyBroadcasts, 'sendMessageTypingAction': SendMessageAction.sendMessageTypingAction, 'sendMessageCancelAction': SendMessageAction.sendMessageCancelAction, 'sendMessageRecordVideoAction': SendMessageAction.sendMessageRecordVideoAction, @@ -9118,77 +9400,102 @@ export interface ConstructorDeclMap { 'sendMessageUploadDocumentAction': SendMessageAction.sendMessageUploadDocumentAction, 'sendMessageGeoLocationAction': SendMessageAction.sendMessageGeoLocationAction, 'sendMessageChooseContactAction': SendMessageAction.sendMessageChooseContactAction, + 'sendMessageGamePlayAction': SendMessageAction.sendMessageGamePlayAction, + 'sendMessageRecordRoundAction': SendMessageAction.sendMessageRecordRoundAction, + 'sendMessageUploadRoundAction': SendMessageAction.sendMessageUploadRoundAction, + 'speakingInGroupCallAction': SendMessageAction.speakingInGroupCallAction, + 'sendMessageHistoryImportAction': SendMessageAction.sendMessageHistoryImportAction, + 'sendMessageChooseStickerAction': SendMessageAction.sendMessageChooseStickerAction, + 'sendMessageEmojiInteraction': SendMessageAction.sendMessageEmojiInteraction, + 'sendMessageEmojiInteractionSeen': SendMessageAction.sendMessageEmojiInteractionSeen, 'contacts.found': ContactsFound.contactsFound, - 'updateServiceNotification': Update.updateServiceNotification, - 'userStatusRecently': UserStatus.userStatusRecently, - 'userStatusLastWeek': UserStatus.userStatusLastWeek, - 'userStatusLastMonth': UserStatus.userStatusLastMonth, - 'updatePrivacy': Update.updatePrivacy, 'inputPrivacyKeyStatusTimestamp': InputPrivacyKey.inputPrivacyKeyStatusTimestamp, + 'inputPrivacyKeyChatInvite': InputPrivacyKey.inputPrivacyKeyChatInvite, + 'inputPrivacyKeyPhoneCall': InputPrivacyKey.inputPrivacyKeyPhoneCall, + 'inputPrivacyKeyPhoneP2P': InputPrivacyKey.inputPrivacyKeyPhoneP2P, + 'inputPrivacyKeyForwards': InputPrivacyKey.inputPrivacyKeyForwards, + 'inputPrivacyKeyProfilePhoto': InputPrivacyKey.inputPrivacyKeyProfilePhoto, + 'inputPrivacyKeyPhoneNumber': InputPrivacyKey.inputPrivacyKeyPhoneNumber, + 'inputPrivacyKeyAddedByPhone': InputPrivacyKey.inputPrivacyKeyAddedByPhone, 'privacyKeyStatusTimestamp': PrivacyKey.privacyKeyStatusTimestamp, + 'privacyKeyChatInvite': PrivacyKey.privacyKeyChatInvite, + 'privacyKeyPhoneCall': PrivacyKey.privacyKeyPhoneCall, + 'privacyKeyPhoneP2P': PrivacyKey.privacyKeyPhoneP2P, + 'privacyKeyForwards': PrivacyKey.privacyKeyForwards, + 'privacyKeyProfilePhoto': PrivacyKey.privacyKeyProfilePhoto, + 'privacyKeyPhoneNumber': PrivacyKey.privacyKeyPhoneNumber, + 'privacyKeyAddedByPhone': PrivacyKey.privacyKeyAddedByPhone, 'inputPrivacyValueAllowContacts': InputPrivacyRule.inputPrivacyValueAllowContacts, 'inputPrivacyValueAllowAll': InputPrivacyRule.inputPrivacyValueAllowAll, 'inputPrivacyValueAllowUsers': InputPrivacyRule.inputPrivacyValueAllowUsers, 'inputPrivacyValueDisallowContacts': InputPrivacyRule.inputPrivacyValueDisallowContacts, 'inputPrivacyValueDisallowAll': InputPrivacyRule.inputPrivacyValueDisallowAll, 'inputPrivacyValueDisallowUsers': InputPrivacyRule.inputPrivacyValueDisallowUsers, + 'inputPrivacyValueAllowChatParticipants': InputPrivacyRule.inputPrivacyValueAllowChatParticipants, + 'inputPrivacyValueDisallowChatParticipants': InputPrivacyRule.inputPrivacyValueDisallowChatParticipants, 'privacyValueAllowContacts': PrivacyRule.privacyValueAllowContacts, 'privacyValueAllowAll': PrivacyRule.privacyValueAllowAll, 'privacyValueAllowUsers': PrivacyRule.privacyValueAllowUsers, 'privacyValueDisallowContacts': PrivacyRule.privacyValueDisallowContacts, 'privacyValueDisallowAll': PrivacyRule.privacyValueDisallowAll, 'privacyValueDisallowUsers': PrivacyRule.privacyValueDisallowUsers, + 'privacyValueAllowChatParticipants': PrivacyRule.privacyValueAllowChatParticipants, + 'privacyValueDisallowChatParticipants': PrivacyRule.privacyValueDisallowChatParticipants, 'account.privacyRules': AccountPrivacyRules.accountPrivacyRules, 'accountDaysTTL': AccountDaysTTL.accountDaysTTL, - 'updateUserPhone': Update.updateUserPhone, 'documentAttributeImageSize': DocumentAttribute.documentAttributeImageSize, 'documentAttributeAnimated': DocumentAttribute.documentAttributeAnimated, 'documentAttributeSticker': DocumentAttribute.documentAttributeSticker, 'documentAttributeVideo': DocumentAttribute.documentAttributeVideo, 'documentAttributeAudio': DocumentAttribute.documentAttributeAudio, 'documentAttributeFilename': DocumentAttribute.documentAttributeFilename, + 'documentAttributeHasStickers': DocumentAttribute.documentAttributeHasStickers, 'messages.stickersNotModified': MessagesStickers.messagesStickersNotModified, 'messages.stickers': MessagesStickers.messagesStickers, 'stickerPack': StickerPack.stickerPack, 'messages.allStickersNotModified': MessagesAllStickers.messagesAllStickersNotModified, 'messages.allStickers': MessagesAllStickers.messagesAllStickers, - 'updateReadHistoryInbox': Update.updateReadHistoryInbox, - 'updateReadHistoryOutbox': Update.updateReadHistoryOutbox, 'messages.affectedMessages': MessagesAffectedMessages.messagesAffectedMessages, - 'updateWebPage': Update.updateWebPage, 'webPageEmpty': WebPage.webPageEmpty, 'webPagePending': WebPage.webPagePending, 'webPage': WebPage.webPage, - 'messageMediaWebPage': MessageMedia.messageMediaWebPage, + 'webPageNotModified': WebPage.webPageNotModified, 'authorization': Authorization.authorization, 'account.authorizations': AccountAuthorizations.accountAuthorizations, 'account.password': AccountPassword.accountPassword, 'account.passwordSettings': AccountPasswordSettings.accountPasswordSettings, 'account.passwordInputSettings': AccountPasswordInputSettings.accountPasswordInputSettings, 'auth.passwordRecovery': AuthPasswordRecovery.authPasswordRecovery, - 'inputMediaVenue': InputMedia.inputMediaVenue, - 'messageMediaVenue': MessageMedia.messageMediaVenue, 'receivedNotifyMessage': ReceivedNotifyMessage.receivedNotifyMessage, 'chatInviteExported': ExportedChatInvite.chatInviteExported, 'chatInviteAlready': ChatInvite.chatInviteAlready, 'chatInvite': ChatInvite.chatInvite, - 'messageActionChatJoinedByLink': MessageAction.messageActionChatJoinedByLink, - 'updateReadMessagesContents': Update.updateReadMessagesContents, + 'chatInvitePeek': ChatInvite.chatInvitePeek, 'inputStickerSetEmpty': InputStickerSet.inputStickerSetEmpty, 'inputStickerSetID': InputStickerSet.inputStickerSetID, 'inputStickerSetShortName': InputStickerSet.inputStickerSetShortName, + 'inputStickerSetAnimatedEmoji': InputStickerSet.inputStickerSetAnimatedEmoji, + 'inputStickerSetDice': InputStickerSet.inputStickerSetDice, 'stickerSet': StickerSet.stickerSet, 'messages.stickerSet': MessagesStickerSet.messagesStickerSet, - 'user': User.user, 'botCommand': BotCommand.botCommand, 'botInfo': BotInfo.botInfo, 'keyboardButton': KeyboardButton.keyboardButton, + 'keyboardButtonUrl': KeyboardButton.keyboardButtonUrl, + 'keyboardButtonCallback': KeyboardButton.keyboardButtonCallback, + 'keyboardButtonRequestPhone': KeyboardButton.keyboardButtonRequestPhone, + 'keyboardButtonRequestGeoLocation': KeyboardButton.keyboardButtonRequestGeoLocation, + 'keyboardButtonSwitchInline': KeyboardButton.keyboardButtonSwitchInline, + 'keyboardButtonGame': KeyboardButton.keyboardButtonGame, + 'keyboardButtonBuy': KeyboardButton.keyboardButtonBuy, + 'keyboardButtonUrlAuth': KeyboardButton.keyboardButtonUrlAuth, + 'inputKeyboardButtonUrlAuth': KeyboardButton.inputKeyboardButtonUrlAuth, + 'keyboardButtonRequestPoll': KeyboardButton.keyboardButtonRequestPoll, 'keyboardButtonRow': KeyboardButtonRow.keyboardButtonRow, 'replyKeyboardHide': ReplyMarkup.replyKeyboardHide, 'replyKeyboardForceReply': ReplyMarkup.replyKeyboardForceReply, 'replyKeyboardMarkup': ReplyMarkup.replyKeyboardMarkup, - 'inputPeerUser': InputPeer.inputPeerUser, - 'inputUser': InputUser.inputUser, + 'replyInlineMarkup': ReplyMarkup.replyInlineMarkup, 'messageEntityUnknown': MessageEntity.messageEntityUnknown, 'messageEntityMention': MessageEntity.messageEntityMention, 'messageEntityHashtag': MessageEntity.messageEntityHashtag, @@ -9200,24 +9507,19 @@ export interface ConstructorDeclMap { 'messageEntityCode': MessageEntity.messageEntityCode, 'messageEntityPre': MessageEntity.messageEntityPre, 'messageEntityTextUrl': MessageEntity.messageEntityTextUrl, - 'updateShortSentMessage': Updates.updateShortSentMessage, + 'messageEntityMentionName': MessageEntity.messageEntityMentionName, + 'inputMessageEntityMentionName': MessageEntity.inputMessageEntityMentionName, + 'messageEntityPhone': MessageEntity.messageEntityPhone, + 'messageEntityCashtag': MessageEntity.messageEntityCashtag, + 'messageEntityUnderline': MessageEntity.messageEntityUnderline, + 'messageEntityStrike': MessageEntity.messageEntityStrike, + 'messageEntityBlockquote': MessageEntity.messageEntityBlockquote, + 'messageEntityBankCard': MessageEntity.messageEntityBankCard, 'inputChannelEmpty': InputChannel.inputChannelEmpty, 'inputChannel': InputChannel.inputChannel, - 'peerChannel': Peer.peerChannel, - 'inputPeerChannel': InputPeer.inputPeerChannel, - 'channel': Chat.channel, - 'channelForbidden': Chat.channelForbidden, + 'inputChannelFromMessage': InputChannel.inputChannelFromMessage, 'contacts.resolvedPeer': ContactsResolvedPeer.contactsResolvedPeer, - 'channelFull': ChatFull.channelFull, 'messageRange': MessageRange.messageRange, - 'messages.channelMessages': MessagesMessages.messagesChannelMessages, - 'messageActionChannelCreate': MessageAction.messageActionChannelCreate, - 'updateChannelTooLong': Update.updateChannelTooLong, - 'updateChannel': Update.updateChannel, - 'updateNewChannelMessage': Update.updateNewChannelMessage, - 'updateReadChannelInbox': Update.updateReadChannelInbox, - 'updateDeleteChannelMessages': Update.updateDeleteChannelMessages, - 'updateChannelMessageViews': Update.updateChannelMessageViews, 'updates.channelDifferenceEmpty': UpdatesChannelDifference.updatesChannelDifferenceEmpty, 'updates.channelDifferenceTooLong': UpdatesChannelDifference.updatesChannelDifferenceTooLong, 'updates.channelDifference': UpdatesChannelDifference.updatesChannelDifference, @@ -9226,41 +9528,45 @@ export interface ConstructorDeclMap { 'channelParticipant': ChannelParticipant.channelParticipant, 'channelParticipantSelf': ChannelParticipant.channelParticipantSelf, 'channelParticipantCreator': ChannelParticipant.channelParticipantCreator, + 'channelParticipantAdmin': ChannelParticipant.channelParticipantAdmin, + 'channelParticipantBanned': ChannelParticipant.channelParticipantBanned, + 'channelParticipantLeft': ChannelParticipant.channelParticipantLeft, 'channelParticipantsRecent': ChannelParticipantsFilter.channelParticipantsRecent, 'channelParticipantsAdmins': ChannelParticipantsFilter.channelParticipantsAdmins, 'channelParticipantsKicked': ChannelParticipantsFilter.channelParticipantsKicked, - 'channels.channelParticipants': ChannelsChannelParticipants.channelsChannelParticipants, - 'channels.channelParticipant': ChannelsChannelParticipant.channelsChannelParticipant, - 'chatParticipantCreator': ChatParticipant.chatParticipantCreator, - 'chatParticipantAdmin': ChatParticipant.chatParticipantAdmin, - 'updateChatParticipantAdmin': Update.updateChatParticipantAdmin, - 'messageActionChatMigrateTo': MessageAction.messageActionChatMigrateTo, - 'messageActionChannelMigrateFrom': MessageAction.messageActionChannelMigrateFrom, 'channelParticipantsBots': ChannelParticipantsFilter.channelParticipantsBots, + 'channelParticipantsBanned': ChannelParticipantsFilter.channelParticipantsBanned, + 'channelParticipantsSearch': ChannelParticipantsFilter.channelParticipantsSearch, + 'channelParticipantsContacts': ChannelParticipantsFilter.channelParticipantsContacts, + 'channelParticipantsMentions': ChannelParticipantsFilter.channelParticipantsMentions, + 'channels.channelParticipants': ChannelsChannelParticipants.channelsChannelParticipants, + 'channels.channelParticipantsNotModified': ChannelsChannelParticipants.channelsChannelParticipantsNotModified, + 'channels.channelParticipant': ChannelsChannelParticipant.channelsChannelParticipant, 'help.termsOfService': HelpTermsOfService.helpTermsOfService, - 'updateNewStickerSet': Update.updateNewStickerSet, - 'updateStickerSetsOrder': Update.updateStickerSetsOrder, - 'updateStickerSets': Update.updateStickerSets, 'messages.savedGifsNotModified': MessagesSavedGifs.messagesSavedGifsNotModified, 'messages.savedGifs': MessagesSavedGifs.messagesSavedGifs, - 'updateSavedGifs': Update.updateSavedGifs, 'inputBotInlineMessageMediaAuto': InputBotInlineMessage.inputBotInlineMessageMediaAuto, 'inputBotInlineMessageText': InputBotInlineMessage.inputBotInlineMessageText, + 'inputBotInlineMessageMediaGeo': InputBotInlineMessage.inputBotInlineMessageMediaGeo, + 'inputBotInlineMessageMediaVenue': InputBotInlineMessage.inputBotInlineMessageMediaVenue, + 'inputBotInlineMessageMediaContact': InputBotInlineMessage.inputBotInlineMessageMediaContact, + 'inputBotInlineMessageGame': InputBotInlineMessage.inputBotInlineMessageGame, + 'inputBotInlineMessageMediaInvoice': InputBotInlineMessage.inputBotInlineMessageMediaInvoice, 'inputBotInlineResult': InputBotInlineResult.inputBotInlineResult, + 'inputBotInlineResultPhoto': InputBotInlineResult.inputBotInlineResultPhoto, + 'inputBotInlineResultDocument': InputBotInlineResult.inputBotInlineResultDocument, + 'inputBotInlineResultGame': InputBotInlineResult.inputBotInlineResultGame, 'botInlineMessageMediaAuto': BotInlineMessage.botInlineMessageMediaAuto, 'botInlineMessageText': BotInlineMessage.botInlineMessageText, + 'botInlineMessageMediaGeo': BotInlineMessage.botInlineMessageMediaGeo, + 'botInlineMessageMediaVenue': BotInlineMessage.botInlineMessageMediaVenue, + 'botInlineMessageMediaContact': BotInlineMessage.botInlineMessageMediaContact, + 'botInlineMessageMediaInvoice': BotInlineMessage.botInlineMessageMediaInvoice, 'botInlineResult': BotInlineResult.botInlineResult, + 'botInlineMediaResult': BotInlineResult.botInlineMediaResult, 'messages.botResults': MessagesBotResults.messagesBotResults, - 'updateBotInlineQuery': Update.updateBotInlineQuery, - 'updateBotInlineSend': Update.updateBotInlineSend, - 'inputMessagesFilterVoice': MessagesFilter.inputMessagesFilterVoice, - 'inputMessagesFilterMusic': MessagesFilter.inputMessagesFilterMusic, - 'inputPrivacyKeyChatInvite': InputPrivacyKey.inputPrivacyKeyChatInvite, - 'privacyKeyChatInvite': PrivacyKey.privacyKeyChatInvite, 'exportedMessageLink': ExportedMessageLink.exportedMessageLink, 'messageFwdHeader': MessageFwdHeader.messageFwdHeader, - 'updateEditChannelMessage': Update.updateEditChannelMessage, - 'messageActionPinMessage': MessageAction.messageActionPinMessage, 'auth.codeTypeSms': AuthCodeType.authCodeTypeSms, 'auth.codeTypeCall': AuthCodeType.authCodeTypeCall, 'auth.codeTypeFlashCall': AuthCodeType.authCodeTypeFlashCall, @@ -9268,27 +9574,10 @@ export interface ConstructorDeclMap { 'auth.sentCodeTypeSms': AuthSentCodeType.authSentCodeTypeSms, 'auth.sentCodeTypeCall': AuthSentCodeType.authSentCodeTypeCall, 'auth.sentCodeTypeFlashCall': AuthSentCodeType.authSentCodeTypeFlashCall, - 'keyboardButtonUrl': KeyboardButton.keyboardButtonUrl, - 'keyboardButtonCallback': KeyboardButton.keyboardButtonCallback, - 'keyboardButtonRequestPhone': KeyboardButton.keyboardButtonRequestPhone, - 'keyboardButtonRequestGeoLocation': KeyboardButton.keyboardButtonRequestGeoLocation, - 'keyboardButtonSwitchInline': KeyboardButton.keyboardButtonSwitchInline, - 'replyInlineMarkup': ReplyMarkup.replyInlineMarkup, 'messages.botCallbackAnswer': MessagesBotCallbackAnswer.messagesBotCallbackAnswer, - 'updateBotCallbackQuery': Update.updateBotCallbackQuery, 'messages.messageEditData': MessagesMessageEditData.messagesMessageEditData, - 'updateEditMessage': Update.updateEditMessage, - 'inputBotInlineMessageMediaGeo': InputBotInlineMessage.inputBotInlineMessageMediaGeo, - 'inputBotInlineMessageMediaVenue': InputBotInlineMessage.inputBotInlineMessageMediaVenue, - 'inputBotInlineMessageMediaContact': InputBotInlineMessage.inputBotInlineMessageMediaContact, - 'botInlineMessageMediaGeo': BotInlineMessage.botInlineMessageMediaGeo, - 'botInlineMessageMediaVenue': BotInlineMessage.botInlineMessageMediaVenue, - 'botInlineMessageMediaContact': BotInlineMessage.botInlineMessageMediaContact, - 'inputBotInlineResultPhoto': InputBotInlineResult.inputBotInlineResultPhoto, - 'inputBotInlineResultDocument': InputBotInlineResult.inputBotInlineResultDocument, - 'botInlineMediaResult': BotInlineResult.botInlineMediaResult, 'inputBotInlineMessageID': InputBotInlineMessageID.inputBotInlineMessageID, - 'updateInlineBotCallbackQuery': Update.updateInlineBotCallbackQuery, + 'inputBotInlineMessageID64': InputBotInlineMessageID.inputBotInlineMessageID64, 'inlineBotSwitchPM': InlineBotSwitchPM.inlineBotSwitchPM, 'messages.peerDialogs': MessagesPeerDialogs.messagesPeerDialogs, 'topPeer': TopPeer.topPeer, @@ -9297,50 +9586,32 @@ export interface ConstructorDeclMap { 'topPeerCategoryCorrespondents': TopPeerCategory.topPeerCategoryCorrespondents, 'topPeerCategoryGroups': TopPeerCategory.topPeerCategoryGroups, 'topPeerCategoryChannels': TopPeerCategory.topPeerCategoryChannels, + 'topPeerCategoryPhoneCalls': TopPeerCategory.topPeerCategoryPhoneCalls, + 'topPeerCategoryForwardUsers': TopPeerCategory.topPeerCategoryForwardUsers, + 'topPeerCategoryForwardChats': TopPeerCategory.topPeerCategoryForwardChats, 'topPeerCategoryPeers': TopPeerCategoryPeers.topPeerCategoryPeers, 'contacts.topPeersNotModified': ContactsTopPeers.contactsTopPeersNotModified, 'contacts.topPeers': ContactsTopPeers.contactsTopPeers, - 'messageEntityMentionName': MessageEntity.messageEntityMentionName, - 'inputMessageEntityMentionName': MessageEntity.inputMessageEntityMentionName, - 'inputMessagesFilterChatPhotos': MessagesFilter.inputMessagesFilterChatPhotos, - 'updateReadChannelOutbox': Update.updateReadChannelOutbox, - 'updateDraftMessage': Update.updateDraftMessage, + 'contacts.topPeersDisabled': ContactsTopPeers.contactsTopPeersDisabled, 'draftMessageEmpty': DraftMessage.draftMessageEmpty, 'draftMessage': DraftMessage.draftMessage, - 'messageActionHistoryClear': MessageAction.messageActionHistoryClear, 'messages.featuredStickersNotModified': MessagesFeaturedStickers.messagesFeaturedStickersNotModified, 'messages.featuredStickers': MessagesFeaturedStickers.messagesFeaturedStickers, - 'updateReadFeaturedStickers': Update.updateReadFeaturedStickers, 'messages.recentStickersNotModified': MessagesRecentStickers.messagesRecentStickersNotModified, 'messages.recentStickers': MessagesRecentStickers.messagesRecentStickers, - 'updateRecentStickers': Update.updateRecentStickers, 'messages.archivedStickers': MessagesArchivedStickers.messagesArchivedStickers, 'messages.stickerSetInstallResultSuccess': MessagesStickerSetInstallResult.messagesStickerSetInstallResultSuccess, 'messages.stickerSetInstallResultArchive': MessagesStickerSetInstallResult.messagesStickerSetInstallResultArchive, 'stickerSetCovered': StickerSetCovered.stickerSetCovered, - 'updateConfig': Update.updateConfig, - 'updatePtsChanged': Update.updatePtsChanged, - 'inputMediaPhotoExternal': InputMedia.inputMediaPhotoExternal, - 'inputMediaDocumentExternal': InputMedia.inputMediaDocumentExternal, 'stickerSetMultiCovered': StickerSetCovered.stickerSetMultiCovered, 'maskCoords': MaskCoords.maskCoords, - 'documentAttributeHasStickers': DocumentAttribute.documentAttributeHasStickers, 'inputStickeredMediaPhoto': InputStickeredMedia.inputStickeredMediaPhoto, 'inputStickeredMediaDocument': InputStickeredMedia.inputStickeredMediaDocument, 'game': Game.game, - 'inputBotInlineResultGame': InputBotInlineResult.inputBotInlineResultGame, - 'inputBotInlineMessageGame': InputBotInlineMessage.inputBotInlineMessageGame, - 'messageMediaGame': MessageMedia.messageMediaGame, - 'inputMediaGame': InputMedia.inputMediaGame, 'inputGameID': InputGame.inputGameID, 'inputGameShortName': InputGame.inputGameShortName, - 'keyboardButtonGame': KeyboardButton.keyboardButtonGame, - 'messageActionGameScore': MessageAction.messageActionGameScore, 'highScore': HighScore.highScore, 'messages.highScores': MessagesHighScores.messagesHighScores, - 'updates.differenceTooLong': UpdatesDifference.updatesDifferenceTooLong, - 'updateChannelWebPage': Update.updateChannelWebPage, - 'messages.chatsSlice': MessagesChats.messagesChatsSlice, 'textEmpty': RichText.textEmpty, 'textPlain': RichText.textPlain, 'textBold': RichText.textBold, @@ -9351,6 +9622,12 @@ export interface ConstructorDeclMap { 'textUrl': RichText.textUrl, 'textEmail': RichText.textEmail, 'textConcat': RichText.textConcat, + 'textSubscript': RichText.textSubscript, + 'textSuperscript': RichText.textSuperscript, + 'textMarked': RichText.textMarked, + 'textPhone': RichText.textPhone, + 'textImage': RichText.textImage, + 'textAnchor': RichText.textAnchor, 'pageBlockUnsupported': PageBlock.pageBlockUnsupported, 'pageBlockTitle': PageBlock.pageBlockTitle, 'pageBlockSubtitle': PageBlock.pageBlockSubtitle, @@ -9372,47 +9649,44 @@ export interface ConstructorDeclMap { 'pageBlockEmbedPost': PageBlock.pageBlockEmbedPost, 'pageBlockCollage': PageBlock.pageBlockCollage, 'pageBlockSlideshow': PageBlock.pageBlockSlideshow, - 'webPageNotModified': WebPage.webPageNotModified, - 'inputPrivacyKeyPhoneCall': InputPrivacyKey.inputPrivacyKeyPhoneCall, - 'privacyKeyPhoneCall': PrivacyKey.privacyKeyPhoneCall, - 'sendMessageGamePlayAction': SendMessageAction.sendMessageGamePlayAction, + 'pageBlockChannel': PageBlock.pageBlockChannel, + 'pageBlockAudio': PageBlock.pageBlockAudio, + 'pageBlockKicker': PageBlock.pageBlockKicker, + 'pageBlockTable': PageBlock.pageBlockTable, + 'pageBlockOrderedList': PageBlock.pageBlockOrderedList, + 'pageBlockDetails': PageBlock.pageBlockDetails, + 'pageBlockRelatedArticles': PageBlock.pageBlockRelatedArticles, + 'pageBlockMap': PageBlock.pageBlockMap, 'phoneCallDiscardReasonMissed': PhoneCallDiscardReason.phoneCallDiscardReasonMissed, 'phoneCallDiscardReasonDisconnect': PhoneCallDiscardReason.phoneCallDiscardReasonDisconnect, 'phoneCallDiscardReasonHangup': PhoneCallDiscardReason.phoneCallDiscardReasonHangup, 'phoneCallDiscardReasonBusy': PhoneCallDiscardReason.phoneCallDiscardReasonBusy, - 'updateDialogPinned': Update.updateDialogPinned, - 'updatePinnedDialogs': Update.updatePinnedDialogs, 'dataJSON': DataJSON.dataJSON, - 'updateBotWebhookJSON': Update.updateBotWebhookJSON, - 'updateBotWebhookJSONQuery': Update.updateBotWebhookJSONQuery, 'labeledPrice': LabeledPrice.labeledPrice, 'invoice': Invoice.invoice, - 'inputMediaInvoice': InputMedia.inputMediaInvoice, 'paymentCharge': PaymentCharge.paymentCharge, - 'messageActionPaymentSentMe': MessageAction.messageActionPaymentSentMe, - 'messageMediaInvoice': MessageMedia.messageMediaInvoice, 'postAddress': PostAddress.postAddress, 'paymentRequestedInfo': PaymentRequestedInfo.paymentRequestedInfo, - 'keyboardButtonBuy': KeyboardButton.keyboardButtonBuy, - 'messageActionPaymentSent': MessageAction.messageActionPaymentSent, 'paymentSavedCredentialsCard': PaymentSavedCredentials.paymentSavedCredentialsCard, 'webDocument': WebDocument.webDocument, + 'webDocumentNoProxy': WebDocument.webDocumentNoProxy, 'inputWebDocument': InputWebDocument.inputWebDocument, 'inputWebFileLocation': InputWebFileLocation.inputWebFileLocation, + 'inputWebFileGeoPointLocation': InputWebFileLocation.inputWebFileGeoPointLocation, 'upload.webFile': UploadWebFile.uploadWebFile, 'payments.paymentForm': PaymentsPaymentForm.paymentsPaymentForm, 'payments.validatedRequestedInfo': PaymentsValidatedRequestedInfo.paymentsValidatedRequestedInfo, 'payments.paymentResult': PaymentsPaymentResult.paymentsPaymentResult, + 'payments.paymentVerificationNeeded': PaymentsPaymentResult.paymentsPaymentVerificationNeeded, 'payments.paymentReceipt': PaymentsPaymentReceipt.paymentsPaymentReceipt, 'payments.savedInfo': PaymentsSavedInfo.paymentsSavedInfo, 'inputPaymentCredentialsSaved': InputPaymentCredentials.inputPaymentCredentialsSaved, 'inputPaymentCredentials': InputPaymentCredentials.inputPaymentCredentials, + 'inputPaymentCredentialsApplePay': InputPaymentCredentials.inputPaymentCredentialsApplePay, + 'inputPaymentCredentialsGooglePay': InputPaymentCredentials.inputPaymentCredentialsGooglePay, 'account.tmpPassword': AccountTmpPassword.accountTmpPassword, 'shippingOption': ShippingOption.shippingOption, - 'updateBotShippingQuery': Update.updateBotShippingQuery, - 'updateBotPrecheckoutQuery': Update.updateBotPrecheckoutQuery, 'inputStickerSetItem': InputStickerSetItem.inputStickerSetItem, - 'updatePhoneCall': Update.updatePhoneCall, 'inputPhoneCall': InputPhoneCall.inputPhoneCall, 'phoneCallEmpty': PhoneCall.phoneCallEmpty, 'phoneCallWaiting': PhoneCall.phoneCallWaiting, @@ -9421,31 +9695,18 @@ export interface ConstructorDeclMap { 'phoneCall': PhoneCall.phoneCall, 'phoneCallDiscarded': PhoneCall.phoneCallDiscarded, 'phoneConnection': PhoneConnection.phoneConnection, + 'phoneConnectionWebrtc': PhoneConnection.phoneConnectionWebrtc, 'phoneCallProtocol': PhoneCallProtocol.phoneCallProtocol, 'phone.phoneCall': PhonePhoneCall.phonePhoneCall, - 'inputMessagesFilterPhoneCalls': MessagesFilter.inputMessagesFilterPhoneCalls, - 'messageActionPhoneCall': MessageAction.messageActionPhoneCall, - 'inputMessagesFilterRoundVoice': MessagesFilter.inputMessagesFilterRoundVoice, - 'inputMessagesFilterRoundVideo': MessagesFilter.inputMessagesFilterRoundVideo, - 'sendMessageRecordRoundAction': SendMessageAction.sendMessageRecordRoundAction, - 'sendMessageUploadRoundAction': SendMessageAction.sendMessageUploadRoundAction, - 'upload.fileCdnRedirect': UploadFile.uploadFileCdnRedirect, 'upload.cdnFileReuploadNeeded': UploadCdnFile.uploadCdnFileReuploadNeeded, 'upload.cdnFile': UploadCdnFile.uploadCdnFile, 'cdnPublicKey': CdnPublicKey.cdnPublicKey, 'cdnConfig': CdnConfig.cdnConfig, - 'pageBlockChannel': PageBlock.pageBlockChannel, 'langPackString': LangPackString.langPackString, 'langPackStringPluralized': LangPackString.langPackStringPluralized, 'langPackStringDeleted': LangPackString.langPackStringDeleted, 'langPackDifference': LangPackDifference.langPackDifference, 'langPackLanguage': LangPackLanguage.langPackLanguage, - 'updateLangPackTooLong': Update.updateLangPackTooLong, - 'updateLangPack': Update.updateLangPack, - 'channelParticipantAdmin': ChannelParticipant.channelParticipantAdmin, - 'channelParticipantBanned': ChannelParticipant.channelParticipantBanned, - 'channelParticipantsBanned': ChannelParticipantsFilter.channelParticipantsBanned, - 'channelParticipantsSearch': ChannelParticipantsFilter.channelParticipantsSearch, 'channelAdminLogEventActionChangeTitle': ChannelAdminLogEventAction.channelAdminLogEventActionChangeTitle, 'channelAdminLogEventActionChangeAbout': ChannelAdminLogEventAction.channelAdminLogEventActionChangeAbout, 'channelAdminLogEventActionChangeUsername': ChannelAdminLogEventAction.channelAdminLogEventActionChangeUsername, @@ -9460,57 +9721,56 @@ export interface ConstructorDeclMap { 'channelAdminLogEventActionParticipantInvite': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantInvite, 'channelAdminLogEventActionParticipantToggleBan': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantToggleBan, 'channelAdminLogEventActionParticipantToggleAdmin': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantToggleAdmin, + 'channelAdminLogEventActionChangeStickerSet': ChannelAdminLogEventAction.channelAdminLogEventActionChangeStickerSet, + 'channelAdminLogEventActionTogglePreHistoryHidden': ChannelAdminLogEventAction.channelAdminLogEventActionTogglePreHistoryHidden, + 'channelAdminLogEventActionDefaultBannedRights': ChannelAdminLogEventAction.channelAdminLogEventActionDefaultBannedRights, + 'channelAdminLogEventActionStopPoll': ChannelAdminLogEventAction.channelAdminLogEventActionStopPoll, + 'channelAdminLogEventActionChangeLinkedChat': ChannelAdminLogEventAction.channelAdminLogEventActionChangeLinkedChat, + 'channelAdminLogEventActionChangeLocation': ChannelAdminLogEventAction.channelAdminLogEventActionChangeLocation, + 'channelAdminLogEventActionToggleSlowMode': ChannelAdminLogEventAction.channelAdminLogEventActionToggleSlowMode, + 'channelAdminLogEventActionStartGroupCall': ChannelAdminLogEventAction.channelAdminLogEventActionStartGroupCall, + 'channelAdminLogEventActionDiscardGroupCall': ChannelAdminLogEventAction.channelAdminLogEventActionDiscardGroupCall, + 'channelAdminLogEventActionParticipantMute': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantMute, + 'channelAdminLogEventActionParticipantUnmute': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantUnmute, + 'channelAdminLogEventActionToggleGroupCallSetting': ChannelAdminLogEventAction.channelAdminLogEventActionToggleGroupCallSetting, + 'channelAdminLogEventActionParticipantJoinByInvite': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantJoinByInvite, + 'channelAdminLogEventActionExportedInviteDelete': ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteDelete, + 'channelAdminLogEventActionExportedInviteRevoke': ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteRevoke, + 'channelAdminLogEventActionExportedInviteEdit': ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteEdit, + 'channelAdminLogEventActionParticipantVolume': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantVolume, + 'channelAdminLogEventActionChangeHistoryTTL': ChannelAdminLogEventAction.channelAdminLogEventActionChangeHistoryTTL, + 'channelAdminLogEventActionChangeTheme': ChannelAdminLogEventAction.channelAdminLogEventActionChangeTheme, 'channelAdminLogEvent': ChannelAdminLogEvent.channelAdminLogEvent, 'channels.adminLogResults': ChannelsAdminLogResults.channelsAdminLogResults, 'channelAdminLogEventsFilter': ChannelAdminLogEventsFilter.channelAdminLogEventsFilter, - 'topPeerCategoryPhoneCalls': TopPeerCategory.topPeerCategoryPhoneCalls, - 'pageBlockAudio': PageBlock.pageBlockAudio, 'popularContact': PopularContact.popularContact, - 'messageActionScreenshotTaken': MessageAction.messageActionScreenshotTaken, 'messages.favedStickersNotModified': MessagesFavedStickers.messagesFavedStickersNotModified, 'messages.favedStickers': MessagesFavedStickers.messagesFavedStickers, - 'updateFavedStickers': Update.updateFavedStickers, - 'updateChannelReadMessagesContents': Update.updateChannelReadMessagesContents, - 'inputMessagesFilterMyMentions': MessagesFilter.inputMessagesFilterMyMentions, - 'updateContactsReset': Update.updateContactsReset, - 'channelAdminLogEventActionChangeStickerSet': ChannelAdminLogEventAction.channelAdminLogEventActionChangeStickerSet, - 'messageActionCustomAction': MessageAction.messageActionCustomAction, - 'inputPaymentCredentialsApplePay': InputPaymentCredentials.inputPaymentCredentialsApplePay, - 'inputMessagesFilterGeo': MessagesFilter.inputMessagesFilterGeo, - 'inputMessagesFilterContacts': MessagesFilter.inputMessagesFilterContacts, - 'updateChannelAvailableMessages': Update.updateChannelAvailableMessages, - 'channelAdminLogEventActionTogglePreHistoryHidden': ChannelAdminLogEventAction.channelAdminLogEventActionTogglePreHistoryHidden, - 'inputMediaGeoLive': InputMedia.inputMediaGeoLive, - 'messageMediaGeoLive': MessageMedia.messageMediaGeoLive, 'recentMeUrlUnknown': RecentMeUrl.recentMeUrlUnknown, 'recentMeUrlUser': RecentMeUrl.recentMeUrlUser, 'recentMeUrlChat': RecentMeUrl.recentMeUrlChat, 'recentMeUrlChatInvite': RecentMeUrl.recentMeUrlChatInvite, 'recentMeUrlStickerSet': RecentMeUrl.recentMeUrlStickerSet, 'help.recentMeUrls': HelpRecentMeUrls.helpRecentMeUrls, - 'channels.channelParticipantsNotModified': ChannelsChannelParticipants.channelsChannelParticipantsNotModified, - 'messages.messagesNotModified': MessagesMessages.messagesMessagesNotModified, 'inputSingleMedia': InputSingleMedia.inputSingleMedia, 'webAuthorization': WebAuthorization.webAuthorization, 'account.webAuthorizations': AccountWebAuthorizations.accountWebAuthorizations, 'inputMessageID': InputMessage.inputMessageID, 'inputMessageReplyTo': InputMessage.inputMessageReplyTo, 'inputMessagePinned': InputMessage.inputMessagePinned, - 'messageEntityPhone': MessageEntity.messageEntityPhone, - 'messageEntityCashtag': MessageEntity.messageEntityCashtag, - 'messageActionBotAllowed': MessageAction.messageActionBotAllowed, + 'inputMessageCallbackQuery': InputMessage.inputMessageCallbackQuery, 'inputDialogPeer': InputDialogPeer.inputDialogPeer, + 'inputDialogPeerFolder': InputDialogPeer.inputDialogPeerFolder, 'dialogPeer': DialogPeer.dialogPeer, + 'dialogPeerFolder': DialogPeer.dialogPeerFolder, 'messages.foundStickerSetsNotModified': MessagesFoundStickerSets.messagesFoundStickerSetsNotModified, 'messages.foundStickerSets': MessagesFoundStickerSets.messagesFoundStickerSets, 'fileHash': FileHash.fileHash, - 'webDocumentNoProxy': WebDocument.webDocumentNoProxy, 'inputClientProxy': InputClientProxy.inputClientProxy, 'help.termsOfServiceUpdateEmpty': HelpTermsOfServiceUpdate.helpTermsOfServiceUpdateEmpty, 'help.termsOfServiceUpdate': HelpTermsOfServiceUpdate.helpTermsOfServiceUpdate, 'inputSecureFileUploaded': InputSecureFile.inputSecureFileUploaded, 'inputSecureFile': InputSecureFile.inputSecureFile, - 'inputSecureFileLocation': InputFileLocation.inputSecureFileLocation, 'secureFileEmpty': SecureFile.secureFileEmpty, 'secureFile': SecureFile.secureFile, 'secureData': SecureData.secureData, @@ -9538,32 +9798,24 @@ export interface ConstructorDeclMap { 'secureValueErrorSelfie': SecureValueError.secureValueErrorSelfie, 'secureValueErrorFile': SecureValueError.secureValueErrorFile, 'secureValueErrorFiles': SecureValueError.secureValueErrorFiles, + 'secureValueError': SecureValueError.secureValueError, + 'secureValueErrorTranslationFile': SecureValueError.secureValueErrorTranslationFile, + 'secureValueErrorTranslationFiles': SecureValueError.secureValueErrorTranslationFiles, 'secureCredentialsEncrypted': SecureCredentialsEncrypted.secureCredentialsEncrypted, 'account.authorizationForm': AccountAuthorizationForm.accountAuthorizationForm, 'account.sentEmailCode': AccountSentEmailCode.accountSentEmailCode, - 'messageActionSecureValuesSentMe': MessageAction.messageActionSecureValuesSentMe, - 'messageActionSecureValuesSent': MessageAction.messageActionSecureValuesSent, 'help.deepLinkInfoEmpty': HelpDeepLinkInfo.helpDeepLinkInfoEmpty, 'help.deepLinkInfo': HelpDeepLinkInfo.helpDeepLinkInfo, 'savedPhoneContact': SavedContact.savedPhoneContact, 'account.takeout': AccountTakeout.accountTakeout, - 'inputTakeoutFileLocation': InputFileLocation.inputTakeoutFileLocation, - 'updateDialogUnreadMark': Update.updateDialogUnreadMark, - 'messages.dialogsNotModified': MessagesDialogs.messagesDialogsNotModified, - 'inputWebFileGeoPointLocation': InputWebFileLocation.inputWebFileGeoPointLocation, - 'contacts.topPeersDisabled': ContactsTopPeers.contactsTopPeersDisabled, - 'inputReportReasonCopyright': ReportReason.inputReportReasonCopyright, 'passwordKdfAlgoUnknown': PasswordKdfAlgo.passwordKdfAlgoUnknown, + 'passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow': PasswordKdfAlgo.passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow, 'securePasswordKdfAlgoUnknown': SecurePasswordKdfAlgo.securePasswordKdfAlgoUnknown, 'securePasswordKdfAlgoPBKDF2HMACSHA512iter100000': SecurePasswordKdfAlgo.securePasswordKdfAlgoPBKDF2HMACSHA512iter100000, 'securePasswordKdfAlgoSHA512': SecurePasswordKdfAlgo.securePasswordKdfAlgoSHA512, 'secureSecretSettings': SecureSecretSettings.secureSecretSettings, - 'passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow': PasswordKdfAlgo.passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow, 'inputCheckPasswordEmpty': InputCheckPasswordSRP.inputCheckPasswordEmpty, 'inputCheckPasswordSRP': InputCheckPasswordSRP.inputCheckPasswordSRP, - 'secureValueError': SecureValueError.secureValueError, - 'secureValueErrorTranslationFile': SecureValueError.secureValueErrorTranslationFile, - 'secureValueErrorTranslationFiles': SecureValueError.secureValueErrorTranslationFiles, 'secureRequiredType': SecureRequiredType.secureRequiredType, 'secureRequiredTypeOneOf': SecureRequiredType.secureRequiredTypeOneOf, 'help.passportConfigNotModified': HelpPassportConfig.helpPassportConfigNotModified, @@ -9576,53 +9828,29 @@ export interface ConstructorDeclMap { 'jsonString': JSONValue.jsonString, 'jsonArray': JSONValue.jsonArray, 'jsonObject': JSONValue.jsonObject, - 'inputNotifyBroadcasts': InputNotifyPeer.inputNotifyBroadcasts, - 'notifyBroadcasts': NotifyPeer.notifyBroadcasts, - 'textSubscript': RichText.textSubscript, - 'textSuperscript': RichText.textSuperscript, - 'textMarked': RichText.textMarked, - 'textPhone': RichText.textPhone, - 'textImage': RichText.textImage, - 'pageBlockKicker': PageBlock.pageBlockKicker, 'pageTableCell': PageTableCell.pageTableCell, 'pageTableRow': PageTableRow.pageTableRow, - 'pageBlockTable': PageBlock.pageBlockTable, 'pageCaption': PageCaption.pageCaption, 'pageListItemText': PageListItem.pageListItemText, 'pageListItemBlocks': PageListItem.pageListItemBlocks, 'pageListOrderedItemText': PageListOrderedItem.pageListOrderedItemText, 'pageListOrderedItemBlocks': PageListOrderedItem.pageListOrderedItemBlocks, - 'pageBlockOrderedList': PageBlock.pageBlockOrderedList, - 'pageBlockDetails': PageBlock.pageBlockDetails, 'pageRelatedArticle': PageRelatedArticle.pageRelatedArticle, - 'pageBlockRelatedArticles': PageBlock.pageBlockRelatedArticles, - 'pageBlockMap': PageBlock.pageBlockMap, 'page': Page.page, - 'inputPrivacyKeyPhoneP2P': InputPrivacyKey.inputPrivacyKeyPhoneP2P, - 'privacyKeyPhoneP2P': PrivacyKey.privacyKeyPhoneP2P, - 'textAnchor': RichText.textAnchor, 'help.supportName': HelpSupportName.helpSupportName, 'help.userInfoEmpty': HelpUserInfo.helpUserInfoEmpty, 'help.userInfo': HelpUserInfo.helpUserInfo, - 'messageActionContactSignUp': MessageAction.messageActionContactSignUp, - 'updateMessagePoll': Update.updateMessagePoll, 'pollAnswer': PollAnswer.pollAnswer, 'poll': Poll.poll, 'pollAnswerVoters': PollAnswerVoters.pollAnswerVoters, 'pollResults': PollResults.pollResults, - 'inputMediaPoll': InputMedia.inputMediaPoll, - 'messageMediaPoll': MessageMedia.messageMediaPoll, 'chatOnlines': ChatOnlines.chatOnlines, 'statsURL': StatsURL.statsURL, - 'photoStrippedSize': PhotoSize.photoStrippedSize, 'chatAdminRights': ChatAdminRights.chatAdminRights, 'chatBannedRights': ChatBannedRights.chatBannedRights, - 'updateChatDefaultBannedRights': Update.updateChatDefaultBannedRights, 'inputWallPaper': InputWallPaper.inputWallPaper, 'inputWallPaperSlug': InputWallPaper.inputWallPaperSlug, - 'channelParticipantsContacts': ChannelParticipantsFilter.channelParticipantsContacts, - 'channelAdminLogEventActionDefaultBannedRights': ChannelAdminLogEventAction.channelAdminLogEventActionDefaultBannedRights, - 'channelAdminLogEventActionStopPoll': ChannelAdminLogEventAction.channelAdminLogEventActionStopPoll, + 'inputWallPaperNoFile': InputWallPaper.inputWallPaperNoFile, 'account.wallPapersNotModified': AccountWallPapers.accountWallPapersNotModified, 'account.wallPapers': AccountWallPapers.accountWallPapers, 'codeSettings': CodeSettings.codeSettings, @@ -9634,67 +9862,23 @@ export interface ConstructorDeclMap { 'emojiKeywordsDifference': EmojiKeywordsDifference.emojiKeywordsDifference, 'emojiURL': EmojiURL.emojiURL, 'emojiLanguage': EmojiLanguage.emojiLanguage, - 'inputPrivacyKeyForwards': InputPrivacyKey.inputPrivacyKeyForwards, - 'privacyKeyForwards': PrivacyKey.privacyKeyForwards, - 'inputPrivacyKeyProfilePhoto': InputPrivacyKey.inputPrivacyKeyProfilePhoto, - 'privacyKeyProfilePhoto': PrivacyKey.privacyKeyProfilePhoto, - 'inputPhotoFileLocation': InputFileLocation.inputPhotoFileLocation, - 'inputPhotoLegacyFileLocation': InputFileLocation.inputPhotoLegacyFileLocation, - 'inputPeerPhotoFileLocation': InputFileLocation.inputPeerPhotoFileLocation, - 'inputStickerSetThumb': InputFileLocation.inputStickerSetThumb, 'folder': Folder.folder, - 'dialogFolder': Dialog.dialogFolder, - 'inputDialogPeerFolder': InputDialogPeer.inputDialogPeerFolder, - 'dialogPeerFolder': DialogPeer.dialogPeerFolder, 'inputFolderPeer': InputFolderPeer.inputFolderPeer, 'folderPeer': FolderPeer.folderPeer, - 'updateFolderPeers': Update.updateFolderPeers, - 'inputUserFromMessage': InputUser.inputUserFromMessage, - 'inputChannelFromMessage': InputChannel.inputChannelFromMessage, - 'inputPeerUserFromMessage': InputPeer.inputPeerUserFromMessage, - 'inputPeerChannelFromMessage': InputPeer.inputPeerChannelFromMessage, - 'inputPrivacyKeyPhoneNumber': InputPrivacyKey.inputPrivacyKeyPhoneNumber, - 'privacyKeyPhoneNumber': PrivacyKey.privacyKeyPhoneNumber, - 'topPeerCategoryForwardUsers': TopPeerCategory.topPeerCategoryForwardUsers, - 'topPeerCategoryForwardChats': TopPeerCategory.topPeerCategoryForwardChats, - 'channelAdminLogEventActionChangeLinkedChat': ChannelAdminLogEventAction.channelAdminLogEventActionChangeLinkedChat, 'messages.searchCounter': MessagesSearchCounter.messagesSearchCounter, - 'keyboardButtonUrlAuth': KeyboardButton.keyboardButtonUrlAuth, - 'inputKeyboardButtonUrlAuth': KeyboardButton.inputKeyboardButtonUrlAuth, 'urlAuthResultRequest': UrlAuthResult.urlAuthResultRequest, 'urlAuthResultAccepted': UrlAuthResult.urlAuthResultAccepted, 'urlAuthResultDefault': UrlAuthResult.urlAuthResultDefault, - 'inputPrivacyValueAllowChatParticipants': InputPrivacyRule.inputPrivacyValueAllowChatParticipants, - 'inputPrivacyValueDisallowChatParticipants': InputPrivacyRule.inputPrivacyValueDisallowChatParticipants, - 'privacyValueAllowChatParticipants': PrivacyRule.privacyValueAllowChatParticipants, - 'privacyValueDisallowChatParticipants': PrivacyRule.privacyValueDisallowChatParticipants, - 'messageEntityUnderline': MessageEntity.messageEntityUnderline, - 'messageEntityStrike': MessageEntity.messageEntityStrike, - 'messageEntityBlockquote': MessageEntity.messageEntityBlockquote, - 'updatePeerSettings': Update.updatePeerSettings, 'channelLocationEmpty': ChannelLocation.channelLocationEmpty, 'channelLocation': ChannelLocation.channelLocation, 'peerLocated': PeerLocated.peerLocated, - 'updatePeerLocated': Update.updatePeerLocated, - 'channelAdminLogEventActionChangeLocation': ChannelAdminLogEventAction.channelAdminLogEventActionChangeLocation, - 'inputReportReasonGeoIrrelevant': ReportReason.inputReportReasonGeoIrrelevant, - 'channelAdminLogEventActionToggleSlowMode': ChannelAdminLogEventAction.channelAdminLogEventActionToggleSlowMode, - 'auth.authorizationSignUpRequired': AuthAuthorization.authAuthorizationSignUpRequired, - 'payments.paymentVerificationNeeded': PaymentsPaymentResult.paymentsPaymentVerificationNeeded, - 'inputStickerSetAnimatedEmoji': InputStickerSet.inputStickerSetAnimatedEmoji, - 'updateNewScheduledMessage': Update.updateNewScheduledMessage, - 'updateDeleteScheduledMessages': Update.updateDeleteScheduledMessages, + 'peerSelfLocated': PeerLocated.peerSelfLocated, 'restrictionReason': RestrictionReason.restrictionReason, 'inputTheme': InputTheme.inputTheme, 'inputThemeSlug': InputTheme.inputThemeSlug, 'theme': Theme.theme, 'account.themesNotModified': AccountThemes.accountThemesNotModified, 'account.themes': AccountThemes.accountThemes, - 'updateTheme': Update.updateTheme, - 'inputPrivacyKeyAddedByPhone': InputPrivacyKey.inputPrivacyKeyAddedByPhone, - 'privacyKeyAddedByPhone': PrivacyKey.privacyKeyAddedByPhone, - 'updateGeoLiveViewed': Update.updateGeoLiveViewed, - 'updateLoginToken': Update.updateLoginToken, 'auth.loginToken': AuthLoginToken.authLoginToken, 'auth.loginTokenMigrateTo': AuthLoginToken.authLoginTokenMigrateTo, 'auth.loginTokenSuccess': AuthLoginToken.authLoginTokenSuccess, @@ -9705,26 +9889,17 @@ export interface ConstructorDeclMap { 'baseThemeNight': BaseTheme.baseThemeNight, 'baseThemeTinted': BaseTheme.baseThemeTinted, 'baseThemeArctic': BaseTheme.baseThemeArctic, - 'inputWallPaperNoFile': InputWallPaper.inputWallPaperNoFile, - 'wallPaperNoFile': WallPaper.wallPaperNoFile, 'inputThemeSettings': InputThemeSettings.inputThemeSettings, 'themeSettings': ThemeSettings.themeSettings, 'webPageAttributeTheme': WebPageAttribute.webPageAttributeTheme, - 'updateMessagePollVote': Update.updateMessagePollVote, 'messageUserVote': MessageUserVote.messageUserVote, 'messageUserVoteInputOption': MessageUserVote.messageUserVoteInputOption, 'messageUserVoteMultiple': MessageUserVote.messageUserVoteMultiple, 'messages.votesList': MessagesVotesList.messagesVotesList, - 'keyboardButtonRequestPoll': KeyboardButton.keyboardButtonRequestPoll, - 'messageEntityBankCard': MessageEntity.messageEntityBankCard, 'bankCardOpenUrl': BankCardOpenUrl.bankCardOpenUrl, 'payments.bankCardData': PaymentsBankCardData.paymentsBankCardData, - 'peerSelfLocated': PeerLocated.peerSelfLocated, 'dialogFilter': DialogFilter.dialogFilter, 'dialogFilterSuggested': DialogFilterSuggested.dialogFilterSuggested, - 'updateDialogFilter': Update.updateDialogFilter, - 'updateDialogFilterOrder': Update.updateDialogFilterOrder, - 'updateDialogFilters': Update.updateDialogFilters, 'statsDateRangeDays': StatsDateRangeDays.statsDateRangeDays, 'statsAbsValueAndPrev': StatsAbsValueAndPrev.statsAbsValueAndPrev, 'statsPercentValue': StatsPercentValue.statsPercentValue, @@ -9733,55 +9908,29 @@ export interface ConstructorDeclMap { 'statsGraph': StatsGraph.statsGraph, 'messageInteractionCounters': MessageInteractionCounters.messageInteractionCounters, 'stats.broadcastStats': StatsBroadcastStats.statsBroadcastStats, - 'inputMediaDice': InputMedia.inputMediaDice, - 'messageMediaDice': MessageMedia.messageMediaDice, - 'inputStickerSetDice': InputStickerSet.inputStickerSetDice, 'help.promoDataEmpty': HelpPromoData.helpPromoDataEmpty, 'help.promoData': HelpPromoData.helpPromoData, 'videoSize': VideoSize.videoSize, - 'updatePhoneCallSignalingData': Update.updatePhoneCallSignalingData, - 'chatInvitePeek': ChatInvite.chatInvitePeek, 'statsGroupTopPoster': StatsGroupTopPoster.statsGroupTopPoster, 'statsGroupTopAdmin': StatsGroupTopAdmin.statsGroupTopAdmin, 'statsGroupTopInviter': StatsGroupTopInviter.statsGroupTopInviter, 'stats.megagroupStats': StatsMegagroupStats.statsMegagroupStats, 'globalPrivacySettings': GlobalPrivacySettings.globalPrivacySettings, - 'phoneConnectionWebrtc': PhoneConnection.phoneConnectionWebrtc, 'help.countryCode': HelpCountryCode.helpCountryCode, 'help.country': HelpCountry.helpCountry, 'help.countriesListNotModified': HelpCountriesList.helpCountriesListNotModified, 'help.countriesList': HelpCountriesList.helpCountriesList, 'messageViews': MessageViews.messageViews, - 'updateChannelMessageForwards': Update.updateChannelMessageForwards, - 'photoSizeProgressive': PhotoSize.photoSizeProgressive, 'messages.messageViews': MessagesMessageViews.messagesMessageViews, - 'updateReadChannelDiscussionInbox': Update.updateReadChannelDiscussionInbox, - 'updateReadChannelDiscussionOutbox': Update.updateReadChannelDiscussionOutbox, 'messages.discussionMessage': MessagesDiscussionMessage.messagesDiscussionMessage, 'messageReplyHeader': MessageReplyHeader.messageReplyHeader, 'messageReplies': MessageReplies.messageReplies, - 'updatePeerBlocked': Update.updatePeerBlocked, 'peerBlocked': PeerBlocked.peerBlocked, - 'updateChannelUserTyping': Update.updateChannelUserTyping, - 'inputMessageCallbackQuery': InputMessage.inputMessageCallbackQuery, - 'channelParticipantLeft': ChannelParticipant.channelParticipantLeft, - 'channelParticipantsMentions': ChannelParticipantsFilter.channelParticipantsMentions, - 'updatePinnedMessages': Update.updatePinnedMessages, - 'updatePinnedChannelMessages': Update.updatePinnedChannelMessages, - 'inputMessagesFilterPinned': MessagesFilter.inputMessagesFilterPinned, 'stats.messageStats': StatsMessageStats.statsMessageStats, - 'messageActionGeoProximityReached': MessageAction.messageActionGeoProximityReached, - 'photoPathSize': PhotoSize.photoPathSize, - 'speakingInGroupCallAction': SendMessageAction.speakingInGroupCallAction, 'groupCallDiscarded': GroupCall.groupCallDiscarded, 'groupCall': GroupCall.groupCall, 'inputGroupCall': InputGroupCall.inputGroupCall, - 'messageActionGroupCall': MessageAction.messageActionGroupCall, - 'messageActionInviteToGroupCall': MessageAction.messageActionInviteToGroupCall, 'groupCallParticipant': GroupCallParticipant.groupCallParticipant, - 'updateChat': Update.updateChat, - 'updateGroupCallParticipants': Update.updateGroupCallParticipants, - 'updateGroupCall': Update.updateGroupCall, 'phone.groupCall': PhoneGroupCall.phoneGroupCall, 'phone.groupParticipants': PhoneGroupParticipants.phoneGroupParticipants, 'inlineQueryPeerTypeSameBotPM': InlineQueryPeerType.inlineQueryPeerTypeSameBotPM, @@ -9789,22 +9938,9 @@ export interface ConstructorDeclMap { 'inlineQueryPeerTypeChat': InlineQueryPeerType.inlineQueryPeerTypeChat, 'inlineQueryPeerTypeMegagroup': InlineQueryPeerType.inlineQueryPeerTypeMegagroup, 'inlineQueryPeerTypeBroadcast': InlineQueryPeerType.inlineQueryPeerTypeBroadcast, - 'channelAdminLogEventActionStartGroupCall': ChannelAdminLogEventAction.channelAdminLogEventActionStartGroupCall, - 'channelAdminLogEventActionDiscardGroupCall': ChannelAdminLogEventAction.channelAdminLogEventActionDiscardGroupCall, - 'channelAdminLogEventActionParticipantMute': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantMute, - 'channelAdminLogEventActionParticipantUnmute': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantUnmute, - 'channelAdminLogEventActionToggleGroupCallSetting': ChannelAdminLogEventAction.channelAdminLogEventActionToggleGroupCallSetting, - 'inputPaymentCredentialsGooglePay': InputPaymentCredentials.inputPaymentCredentialsGooglePay, 'messages.historyImport': MessagesHistoryImport.messagesHistoryImport, - 'sendMessageHistoryImportAction': SendMessageAction.sendMessageHistoryImportAction, 'messages.historyImportParsed': MessagesHistoryImportParsed.messagesHistoryImportParsed, - 'inputReportReasonFake': ReportReason.inputReportReasonFake, 'messages.affectedFoundMessages': MessagesAffectedFoundMessages.messagesAffectedFoundMessages, - 'messageActionSetMessagesTTL': MessageAction.messageActionSetMessagesTTL, - 'updatePeerHistoryTTL': Update.updatePeerHistoryTTL, - 'updateChatParticipant': Update.updateChatParticipant, - 'updateChannelParticipant': Update.updateChannelParticipant, - 'updateBotStopped': Update.updateBotStopped, 'chatInviteImporter': ChatInviteImporter.chatInviteImporter, 'messages.exportedChatInvites': MessagesExportedChatInvites.messagesExportedChatInvites, 'messages.exportedChatInvite': MessagesExportedChatInvite.messagesExportedChatInvite, @@ -9812,22 +9948,11 @@ export interface ConstructorDeclMap { 'messages.chatInviteImporters': MessagesChatInviteImporters.messagesChatInviteImporters, 'chatAdminWithInvites': ChatAdminWithInvites.chatAdminWithInvites, 'messages.chatAdminsWithInvites': MessagesChatAdminsWithInvites.messagesChatAdminsWithInvites, - 'channelAdminLogEventActionParticipantJoinByInvite': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantJoinByInvite, - 'channelAdminLogEventActionExportedInviteDelete': ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteDelete, - 'channelAdminLogEventActionExportedInviteRevoke': ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteRevoke, - 'channelAdminLogEventActionExportedInviteEdit': ChannelAdminLogEventAction.channelAdminLogEventActionExportedInviteEdit, - 'channelAdminLogEventActionParticipantVolume': ChannelAdminLogEventAction.channelAdminLogEventActionParticipantVolume, - 'channelAdminLogEventActionChangeHistoryTTL': ChannelAdminLogEventAction.channelAdminLogEventActionChangeHistoryTTL, 'messages.checkedHistoryImportPeer': MessagesCheckedHistoryImportPeer.messagesCheckedHistoryImportPeer, - 'inputGroupCallStream': InputFileLocation.inputGroupCallStream, 'phone.joinAsPeers': PhoneJoinAsPeers.phoneJoinAsPeers, 'phone.exportedGroupCallInvite': PhoneExportedGroupCallInvite.phoneExportedGroupCallInvite, - 'inputBotInlineMessageMediaInvoice': InputBotInlineMessage.inputBotInlineMessageMediaInvoice, - 'botInlineMessageMediaInvoice': BotInlineMessage.botInlineMessageMediaInvoice, - 'messageActionGroupCallScheduled': MessageAction.messageActionGroupCallScheduled, 'groupCallParticipantVideoSourceGroup': GroupCallParticipantVideoSourceGroup.groupCallParticipantVideoSourceGroup, 'groupCallParticipantVideo': GroupCallParticipantVideo.groupCallParticipantVideo, - 'updateGroupCallConnection': Update.updateGroupCallConnection, 'stickers.suggestedShortName': StickersSuggestedShortName.stickersSuggestedShortName, 'botCommandScopeDefault': BotCommandScope.botCommandScopeDefault, 'botCommandScopeUsers': BotCommandScope.botCommandScopeUsers, @@ -9839,7 +9964,11 @@ export interface ConstructorDeclMap { 'account.resetPasswordFailedWait': AccountResetPasswordResult.accountResetPasswordFailedWait, 'account.resetPasswordRequestedWait': AccountResetPasswordResult.accountResetPasswordRequestedWait, 'account.resetPasswordOk': AccountResetPasswordResult.accountResetPasswordOk, - 'updateBotCommands': Update.updateBotCommands, + 'chatTheme': ChatTheme.chatTheme, + 'account.chatThemesNotModified': AccountChatThemes.accountChatThemesNotModified, + 'account.chatThemes': AccountChatThemes.accountChatThemes, + 'sponsoredMessage': SponsoredMessage.sponsoredMessage, + 'messages.sponsoredMessages': MessagesSponsoredMessages.messagesSponsoredMessages, 'messageEntityEmoji': MessageEntity.messageEntityEmoji, 'messageEntityHighlight': MessageEntity.messageEntityHighlight, 'messageEntityLinebreak': MessageEntity.messageEntityLinebreak, @@ -9862,12 +9991,45 @@ export interface ConstructorDeclMap { } export type InvokeAfterMsg = { - msg_id: string, + msg_id: string | number, query: any }; export type InvokeAfterMsgs = { - msg_ids: Array, + msg_ids: Array, + query: any +}; + +export type InitConnection = { + flags?: number, + api_id: number, + device_model: string, + system_version: string, + app_version: string, + system_lang_code: string, + lang_pack: string, + lang_code: string, + proxy?: InputClientProxy, + params?: JSONValue, + query: any +}; + +export type InvokeWithLayer = { + layer: number, + query: any +}; + +export type InvokeWithoutUpdates = { + query: any +}; + +export type InvokeWithMessagesRange = { + range: MessageRange, + query: any +}; + +export type InvokeWithTakeout = { + takeout_id: string | number, query: any }; @@ -9904,17 +10066,70 @@ export type AuthExportAuthorization = { }; export type AuthImportAuthorization = { - id: number, + id: string | number, bytes: Uint8Array }; export type AuthBindTempAuthKey = { - perm_auth_key_id: string, - nonce: string, + perm_auth_key_id: string | number, + nonce: string | number, expires_at: number, encrypted_message: Uint8Array }; +export type AuthImportBotAuthorization = { + flags?: number, + api_id: number, + api_hash: string, + bot_auth_token: string +}; + +export type AuthCheckPassword = { + password: InputCheckPasswordSRP +}; + +export type AuthRequestPasswordRecovery = { + +}; + +export type AuthRecoverPassword = { + flags?: number, + code: string, + new_settings?: AccountPasswordInputSettings +}; + +export type AuthResendCode = { + phone_number: string, + phone_code_hash: string +}; + +export type AuthCancelCode = { + phone_number: string, + phone_code_hash: string +}; + +export type AuthDropTempAuthKeys = { + except_auth_keys: Array +}; + +export type AuthExportLoginToken = { + api_id: number, + api_hash: string, + except_ids: Array +}; + +export type AuthImportLoginToken = { + token: Uint8Array +}; + +export type AuthAcceptLoginToken = { + token: Uint8Array +}; + +export type AuthCheckRecoveryPassword = { + code: string +}; + export type AccountRegisterDevice = { flags?: number, no_muted?: boolean, @@ -9922,13 +10137,13 @@ export type AccountRegisterDevice = { token: string, app_sandbox: boolean, secret: Uint8Array, - other_uids: Array + other_uids: Array }; export type AccountUnregisterDevice = { token_type: number, token: string, - other_uids: Array + other_uids: Array }; export type AccountUpdateNotifySettings = { @@ -9956,7 +10171,7 @@ export type AccountUpdateStatus = { }; export type AccountGetWallPapers = { - hash: number + hash: string | number }; export type AccountReportPeer = { @@ -9965,6 +10180,316 @@ export type AccountReportPeer = { message: string }; +export type AccountCheckUsername = { + username: string +}; + +export type AccountUpdateUsername = { + username: string +}; + +export type AccountGetPrivacy = { + key: InputPrivacyKey +}; + +export type AccountSetPrivacy = { + key: InputPrivacyKey, + rules: Array +}; + +export type AccountDeleteAccount = { + reason: string +}; + +export type AccountGetAccountTTL = { + +}; + +export type AccountSetAccountTTL = { + ttl: AccountDaysTTL +}; + +export type AccountSendChangePhoneCode = { + phone_number: string, + settings: CodeSettings +}; + +export type AccountChangePhone = { + phone_number: string, + phone_code_hash: string, + phone_code: string +}; + +export type AccountUpdateDeviceLocked = { + period: number +}; + +export type AccountGetAuthorizations = { + +}; + +export type AccountResetAuthorization = { + hash: string | number +}; + +export type AccountGetPassword = { + +}; + +export type AccountGetPasswordSettings = { + password: InputCheckPasswordSRP +}; + +export type AccountUpdatePasswordSettings = { + password: InputCheckPasswordSRP, + new_settings: AccountPasswordInputSettings +}; + +export type AccountSendConfirmPhoneCode = { + hash: string, + settings: CodeSettings +}; + +export type AccountConfirmPhone = { + phone_code_hash: string, + phone_code: string +}; + +export type AccountGetTmpPassword = { + password: InputCheckPasswordSRP, + period: number +}; + +export type AccountGetWebAuthorizations = { + +}; + +export type AccountResetWebAuthorization = { + hash: string | number +}; + +export type AccountResetWebAuthorizations = { + +}; + +export type AccountGetAllSecureValues = { + +}; + +export type AccountGetSecureValue = { + types: Array +}; + +export type AccountSaveSecureValue = { + value: InputSecureValue, + secure_secret_id: string | number +}; + +export type AccountDeleteSecureValue = { + types: Array +}; + +export type AccountGetAuthorizationForm = { + bot_id: string | number, + scope: string, + public_key: string +}; + +export type AccountAcceptAuthorization = { + bot_id: string | number, + scope: string, + public_key: string, + value_hashes: Array, + credentials: SecureCredentialsEncrypted +}; + +export type AccountSendVerifyPhoneCode = { + phone_number: string, + settings: CodeSettings +}; + +export type AccountVerifyPhone = { + phone_number: string, + phone_code_hash: string, + phone_code: string +}; + +export type AccountSendVerifyEmailCode = { + email: string +}; + +export type AccountVerifyEmail = { + email: string, + code: string +}; + +export type AccountInitTakeoutSession = { + flags?: number, + contacts?: boolean, + message_users?: boolean, + message_chats?: boolean, + message_megagroups?: boolean, + message_channels?: boolean, + files?: boolean, + file_max_size?: number +}; + +export type AccountFinishTakeoutSession = { + flags?: number, + success?: boolean +}; + +export type AccountConfirmPasswordEmail = { + code: string +}; + +export type AccountResendPasswordEmail = { + +}; + +export type AccountCancelPasswordEmail = { + +}; + +export type AccountGetContactSignUpNotification = { + +}; + +export type AccountSetContactSignUpNotification = { + silent: boolean +}; + +export type AccountGetNotifyExceptions = { + flags?: number, + compare_sound?: boolean, + peer?: InputNotifyPeer +}; + +export type AccountGetWallPaper = { + wallpaper: InputWallPaper +}; + +export type AccountUploadWallPaper = { + file: InputFile, + mime_type: string, + settings: WallPaperSettings +}; + +export type AccountSaveWallPaper = { + wallpaper: InputWallPaper, + unsave: boolean, + settings: WallPaperSettings +}; + +export type AccountInstallWallPaper = { + wallpaper: InputWallPaper, + settings: WallPaperSettings +}; + +export type AccountResetWallPapers = { + +}; + +export type AccountGetAutoDownloadSettings = { + +}; + +export type AccountSaveAutoDownloadSettings = { + flags?: number, + low?: boolean, + high?: boolean, + settings: AutoDownloadSettings +}; + +export type AccountUploadTheme = { + flags?: number, + file: InputFile, + thumb?: InputFile, + file_name: string, + mime_type: string +}; + +export type AccountCreateTheme = { + flags?: number, + slug: string, + title: string, + document?: InputDocument, + settings?: InputThemeSettings +}; + +export type AccountUpdateTheme = { + flags?: number, + format: string, + theme: InputTheme, + slug?: string, + title?: string, + document?: InputDocument, + settings?: InputThemeSettings +}; + +export type AccountSaveTheme = { + theme: InputTheme, + unsave: boolean +}; + +export type AccountInstallTheme = { + flags?: number, + dark?: boolean, + format?: string, + theme?: InputTheme +}; + +export type AccountGetTheme = { + format: string, + theme: InputTheme, + document_id: string | number +}; + +export type AccountGetThemes = { + format: string, + hash: string | number +}; + +export type AccountSetContentSettings = { + flags?: number, + sensitive_enabled?: boolean +}; + +export type AccountGetContentSettings = { + +}; + +export type AccountGetMultiWallPapers = { + wallpapers: Array +}; + +export type AccountGetGlobalPrivacySettings = { + +}; + +export type AccountSetGlobalPrivacySettings = { + settings: GlobalPrivacySettings +}; + +export type AccountReportProfilePhoto = { + peer: InputPeer, + photo_id: InputPhoto, + reason: ReportReason, + message: string +}; + +export type AccountResetPassword = { + +}; + +export type AccountDeclinePasswordReset = { + +}; + +export type AccountGetChatThemes = { + hash: number +}; + export type UsersGetUsers = { id: Array }; @@ -9973,8 +10498,13 @@ export type UsersGetFullUser = { id: InputUser }; +export type UsersSetSecureValueErrors = { + id: InputUser, + errors: Array +}; + export type ContactsGetContactIDs = { - hash: number + hash: string | number }; export type ContactsGetStatuses = { @@ -9982,7 +10512,7 @@ export type ContactsGetStatuses = { }; export type ContactsGetContacts = { - hash: number + hash: string | number }; export type ContactsImportContacts = { @@ -10010,6 +10540,75 @@ export type ContactsGetBlocked = { limit: number }; +export type ContactsSearch = { + q: string, + limit: number +}; + +export type ContactsResolveUsername = { + username: string +}; + +export type ContactsGetTopPeers = { + flags?: number, + correspondents?: boolean, + bots_pm?: boolean, + bots_inline?: boolean, + phone_calls?: boolean, + forward_users?: boolean, + forward_chats?: boolean, + groups?: boolean, + channels?: boolean, + offset: number, + limit: number, + hash: string | number +}; + +export type ContactsResetTopPeerRating = { + category: TopPeerCategory, + peer: InputPeer +}; + +export type ContactsResetSaved = { + +}; + +export type ContactsGetSaved = { + +}; + +export type ContactsToggleTopPeers = { + enabled: boolean +}; + +export type ContactsAddContact = { + flags?: number, + add_phone_privacy_exception?: boolean, + id: InputUser, + first_name: string, + last_name: string, + phone: string +}; + +export type ContactsAcceptContact = { + id: InputUser +}; + +export type ContactsGetLocated = { + flags?: number, + background?: boolean, + geo_point: InputGeoPoint, + self_expires?: number +}; + +export type ContactsBlockFromReplies = { + flags?: number, + delete_message?: boolean, + delete_history?: boolean, + report_spam?: boolean, + msg_id: number +}; + export type MessagesGetMessages = { id: Array }; @@ -10022,7 +10621,7 @@ export type MessagesGetDialogs = { offset_id: number, offset_peer: InputPeer, limit: number, - hash: number + hash: string | number }; export type MessagesGetHistory = { @@ -10033,7 +10632,7 @@ export type MessagesGetHistory = { limit: number, max_id: number, min_id: number, - hash: number + hash: string | number }; export type MessagesSearch = { @@ -10050,7 +10649,7 @@ export type MessagesSearch = { limit: number, max_id: number, min_id: number, - hash: number + hash: string | number }; export type MessagesReadHistory = { @@ -10092,7 +10691,7 @@ export type MessagesSendMessage = { peer: InputPeer, reply_to_msg_id?: number, message: string, - random_id: string, + random_id: string | number, reply_markup?: ReplyMarkup, entities?: Array, schedule_date?: number @@ -10107,7 +10706,7 @@ export type MessagesSendMedia = { reply_to_msg_id?: number, media: InputMedia, message: string, - random_id: string, + random_id: string | number, reply_markup?: ReplyMarkup, entities?: Array, schedule_date?: number @@ -10118,9 +10717,11 @@ export type MessagesForwardMessages = { silent?: boolean, background?: boolean, with_my_score?: boolean, + drop_author?: boolean, + drop_media_captions?: boolean, from_peer: InputPeer, id: Array, - random_id: Array, + random_id: Array, to_peer: InputPeer, schedule_date?: number }; @@ -10141,25 +10742,25 @@ export type MessagesReport = { }; export type MessagesGetChats = { - id: Array + id: Array }; export type MessagesGetFullChat = { - chat_id: number + chat_id: string | number }; export type MessagesEditChatTitle = { - chat_id: number, + chat_id: string | number, title: string }; export type MessagesEditChatPhoto = { - chat_id: number, + chat_id: string | number, photo: InputChatPhoto }; export type MessagesAddChatUser = { - chat_id: number, + chat_id: string | number, user_id: InputUser, fwd_limit: number }; @@ -10167,7 +10768,7 @@ export type MessagesAddChatUser = { export type MessagesDeleteChatUser = { flags?: number, revoke_history?: boolean, - chat_id: number, + chat_id: string | number, user_id: InputUser }; @@ -10176,71 +10777,6 @@ export type MessagesCreateChat = { title: string }; -export type UpdatesGetState = { - -}; - -export type UpdatesGetDifference = { - flags?: number, - pts: number, - pts_total_limit?: number, - date: number, - qts: number -}; - -export type PhotosUpdateProfilePhoto = { - id: InputPhoto -}; - -export type PhotosUploadProfilePhoto = { - flags?: number, - file?: InputFile, - video?: InputFile, - video_start_ts?: number -}; - -export type PhotosDeletePhotos = { - id: Array -}; - -export type UploadSaveFilePart = { - file_id: string, - file_part: number, - bytes: Uint8Array -}; - -export type UploadGetFile = { - flags?: number, - precise?: boolean, - cdn_supported?: boolean, - location: InputFileLocation, - offset: number, - limit: number -}; - -export type HelpGetConfig = { - -}; - -export type HelpGetNearestDc = { - -}; - -export type HelpGetAppUpdate = { - source: string -}; - -export type HelpGetInviteText = { - -}; - -export type PhotosGetUserPhotos = { - user_id: InputUser, - offset: number, - max_id: string, - limit: number -}; - export type MessagesGetDhConfig = { version: number, random_length: number @@ -10255,7 +10791,7 @@ export type MessagesRequestEncryption = { export type MessagesAcceptEncryption = { peer: InputEncryptedChat, g_b: Uint8Array, - key_fingerprint: string + key_fingerprint: string | number }; export type MessagesDiscardEncryption = { @@ -10278,7 +10814,7 @@ export type MessagesSendEncrypted = { flags?: number, silent?: boolean, peer: InputEncryptedChat, - random_id: string, + random_id: string | number, data: Uint8Array }; @@ -10286,14 +10822,14 @@ export type MessagesSendEncryptedFile = { flags?: number, silent?: boolean, peer: InputEncryptedChat, - random_id: string, + random_id: string | number, data: Uint8Array, file: InputEncryptedFile }; export type MessagesSendEncryptedService = { peer: InputEncryptedChat, - random_id: string, + random_id: string | number, data: Uint8Array }; @@ -10305,107 +10841,17 @@ export type MessagesReportEncryptedSpam = { peer: InputEncryptedChat }; -export type UploadSaveBigFilePart = { - file_id: string, - file_part: number, - file_total_parts: number, - bytes: Uint8Array -}; - -export type InitConnection = { - flags?: number, - api_id: number, - device_model: string, - system_version: string, - app_version: string, - system_lang_code: string, - lang_pack: string, - lang_code: string, - proxy?: InputClientProxy, - params?: JSONValue, - query: any -}; - -export type HelpGetSupport = { - -}; - export type MessagesReadMessageContents = { id: Array }; -export type AccountCheckUsername = { - username: string -}; - -export type AccountUpdateUsername = { - username: string -}; - -export type ContactsSearch = { - q: string, - limit: number -}; - -export type AccountGetPrivacy = { - key: InputPrivacyKey -}; - -export type AccountSetPrivacy = { - key: InputPrivacyKey, - rules: Array -}; - -export type AccountDeleteAccount = { - reason: string -}; - -export type AccountGetAccountTTL = { - -}; - -export type AccountSetAccountTTL = { - ttl: AccountDaysTTL -}; - -export type InvokeWithLayer = { - layer: number, - query: any -}; - -export type ContactsResolveUsername = { - username: string -}; - -export type AccountSendChangePhoneCode = { - phone_number: string, - settings: CodeSettings -}; - -export type AccountChangePhone = { - phone_number: string, - phone_code_hash: string, - phone_code: string -}; - export type MessagesGetStickers = { emoticon: string, - hash: number + hash: string | number }; export type MessagesGetAllStickers = { - hash: number -}; - -export type AccountUpdateDeviceLocked = { - period: number -}; - -export type AuthImportBotAuthorization = { - flags?: number, - api_id: number, - api_hash: string, - bot_auth_token: string + hash: string | number }; export type MessagesGetWebPagePreview = { @@ -10414,45 +10860,6 @@ export type MessagesGetWebPagePreview = { entities?: Array }; -export type AccountGetAuthorizations = { - -}; - -export type AccountResetAuthorization = { - hash: string -}; - -export type AccountGetPassword = { - -}; - -export type AccountGetPasswordSettings = { - password: InputCheckPasswordSRP -}; - -export type AccountUpdatePasswordSettings = { - password: InputCheckPasswordSRP, - new_settings: AccountPasswordInputSettings -}; - -export type AuthCheckPassword = { - password: InputCheckPasswordSRP -}; - -export type AuthRequestPasswordRecovery = { - -}; - -export type AuthRecoverPassword = { - flags?: number, - code: string, - new_settings?: AccountPasswordInputSettings -}; - -export type InvokeWithoutUpdates = { - query: any -}; - export type MessagesExportChatInvite = { flags?: number, legacy_revoke_permanent?: boolean, @@ -10485,20 +10892,806 @@ export type MessagesUninstallStickerSet = { export type MessagesStartBot = { bot: InputUser, peer: InputPeer, - random_id: string, + random_id: string | number, start_param: string }; -export type HelpGetAppChangelog = { - prev_app_version: string -}; - export type MessagesGetMessagesViews = { peer: InputPeer, id: Array, increment: boolean }; +export type MessagesEditChatAdmin = { + chat_id: string | number, + user_id: InputUser, + is_admin: boolean +}; + +export type MessagesMigrateChat = { + chat_id: string | number +}; + +export type MessagesSearchGlobal = { + flags?: number, + folder_id?: number, + q: string, + filter: MessagesFilter, + min_date: number, + max_date: number, + offset_rate: number, + offset_peer: InputPeer, + offset_id: number, + limit: number +}; + +export type MessagesReorderStickerSets = { + flags?: number, + masks?: boolean, + order: Array +}; + +export type MessagesGetDocumentByHash = { + sha256: Uint8Array, + size: number, + mime_type: string +}; + +export type MessagesGetSavedGifs = { + hash: string | number +}; + +export type MessagesSaveGif = { + id: InputDocument, + unsave: boolean +}; + +export type MessagesGetInlineBotResults = { + flags?: number, + bot: InputUser, + peer: InputPeer, + geo_point?: InputGeoPoint, + query: string, + offset: string +}; + +export type MessagesSetInlineBotResults = { + flags?: number, + gallery?: boolean, + private?: boolean, + query_id: string | number, + results: Array, + cache_time: number, + next_offset?: string, + switch_pm?: InlineBotSwitchPM +}; + +export type MessagesSendInlineBotResult = { + flags?: number, + silent?: boolean, + background?: boolean, + clear_draft?: boolean, + hide_via?: boolean, + peer: InputPeer, + reply_to_msg_id?: number, + random_id: string | number, + query_id: string | number, + id: string, + schedule_date?: number +}; + +export type MessagesGetMessageEditData = { + peer: InputPeer, + id: number +}; + +export type MessagesEditMessage = { + flags?: number, + no_webpage?: boolean, + peer: InputPeer, + id: number, + message?: string, + media?: InputMedia, + reply_markup?: ReplyMarkup, + entities?: Array, + schedule_date?: number +}; + +export type MessagesEditInlineBotMessage = { + flags?: number, + no_webpage?: boolean, + id: InputBotInlineMessageID, + message?: string, + media?: InputMedia, + reply_markup?: ReplyMarkup, + entities?: Array +}; + +export type MessagesGetBotCallbackAnswer = { + flags?: number, + game?: boolean, + peer: InputPeer, + msg_id: number, + data?: Uint8Array, + password?: InputCheckPasswordSRP +}; + +export type MessagesSetBotCallbackAnswer = { + flags?: number, + alert?: boolean, + query_id: string | number, + message?: string, + url?: string, + cache_time: number +}; + +export type MessagesGetPeerDialogs = { + peers: Array +}; + +export type MessagesSaveDraft = { + flags?: number, + no_webpage?: boolean, + reply_to_msg_id?: number, + peer: InputPeer, + message: string, + entities?: Array +}; + +export type MessagesGetAllDrafts = { + +}; + +export type MessagesGetFeaturedStickers = { + hash: string | number +}; + +export type MessagesReadFeaturedStickers = { + id: Array +}; + +export type MessagesGetRecentStickers = { + flags?: number, + attached?: boolean, + hash: string | number +}; + +export type MessagesSaveRecentSticker = { + flags?: number, + attached?: boolean, + id: InputDocument, + unsave: boolean +}; + +export type MessagesClearRecentStickers = { + flags?: number, + attached?: boolean +}; + +export type MessagesGetArchivedStickers = { + flags?: number, + masks?: boolean, + offset_id: string | number, + limit: number +}; + +export type MessagesGetMaskStickers = { + hash: string | number +}; + +export type MessagesGetAttachedStickers = { + media: InputStickeredMedia +}; + +export type MessagesSetGameScore = { + flags?: number, + edit_message?: boolean, + force?: boolean, + peer: InputPeer, + id: number, + user_id: InputUser, + score: number +}; + +export type MessagesSetInlineGameScore = { + flags?: number, + edit_message?: boolean, + force?: boolean, + id: InputBotInlineMessageID, + user_id: InputUser, + score: number +}; + +export type MessagesGetGameHighScores = { + peer: InputPeer, + id: number, + user_id: InputUser +}; + +export type MessagesGetInlineGameHighScores = { + id: InputBotInlineMessageID, + user_id: InputUser +}; + +export type MessagesGetCommonChats = { + user_id: InputUser, + max_id: string | number, + limit: number +}; + +export type MessagesGetAllChats = { + except_ids: Array +}; + +export type MessagesGetWebPage = { + url: string, + hash: number +}; + +export type MessagesToggleDialogPin = { + flags?: number, + pinned?: boolean, + peer: InputDialogPeer +}; + +export type MessagesReorderPinnedDialogs = { + flags?: number, + force?: boolean, + folder_id: number, + order: Array +}; + +export type MessagesGetPinnedDialogs = { + folder_id: number +}; + +export type MessagesSetBotShippingResults = { + flags?: number, + query_id: string | number, + error?: string, + shipping_options?: Array +}; + +export type MessagesSetBotPrecheckoutResults = { + flags?: number, + success?: boolean, + query_id: string | number, + error?: string +}; + +export type MessagesUploadMedia = { + peer: InputPeer, + media: InputMedia +}; + +export type MessagesSendScreenshotNotification = { + peer: InputPeer, + reply_to_msg_id: number, + random_id: string | number +}; + +export type MessagesGetFavedStickers = { + hash: string | number +}; + +export type MessagesFaveSticker = { + id: InputDocument, + unfave: boolean +}; + +export type MessagesGetUnreadMentions = { + peer: InputPeer, + offset_id: number, + add_offset: number, + limit: number, + max_id: number, + min_id: number +}; + +export type MessagesReadMentions = { + peer: InputPeer +}; + +export type MessagesGetRecentLocations = { + peer: InputPeer, + limit: number, + hash: string | number +}; + +export type MessagesSendMultiMedia = { + flags?: number, + silent?: boolean, + background?: boolean, + clear_draft?: boolean, + peer: InputPeer, + reply_to_msg_id?: number, + multi_media: Array, + schedule_date?: number +}; + +export type MessagesUploadEncryptedFile = { + peer: InputEncryptedChat, + file: InputEncryptedFile +}; + +export type MessagesSearchStickerSets = { + flags?: number, + exclude_featured?: boolean, + q: string, + hash: string | number +}; + +export type MessagesGetSplitRanges = { + +}; + +export type MessagesMarkDialogUnread = { + flags?: number, + unread?: boolean, + peer: InputDialogPeer +}; + +export type MessagesGetDialogUnreadMarks = { + +}; + +export type MessagesClearAllDrafts = { + +}; + +export type MessagesUpdatePinnedMessage = { + flags?: number, + silent?: boolean, + unpin?: boolean, + pm_oneside?: boolean, + peer: InputPeer, + id: number +}; + +export type MessagesSendVote = { + peer: InputPeer, + msg_id: number, + options: Array +}; + +export type MessagesGetPollResults = { + peer: InputPeer, + msg_id: number +}; + +export type MessagesGetOnlines = { + peer: InputPeer +}; + +export type MessagesGetStatsURL = { + flags?: number, + dark?: boolean, + peer: InputPeer, + params: string +}; + +export type MessagesEditChatAbout = { + peer: InputPeer, + about: string +}; + +export type MessagesEditChatDefaultBannedRights = { + peer: InputPeer, + banned_rights: ChatBannedRights +}; + +export type MessagesGetEmojiKeywords = { + lang_code: string +}; + +export type MessagesGetEmojiKeywordsDifference = { + lang_code: string, + from_version: number +}; + +export type MessagesGetEmojiKeywordsLanguages = { + lang_codes: Array +}; + +export type MessagesGetEmojiURL = { + lang_code: string +}; + +export type MessagesGetSearchCounters = { + peer: InputPeer, + filters: Array +}; + +export type MessagesRequestUrlAuth = { + flags?: number, + peer?: InputPeer, + msg_id?: number, + button_id?: number, + url?: string +}; + +export type MessagesAcceptUrlAuth = { + flags?: number, + write_allowed?: boolean, + peer?: InputPeer, + msg_id?: number, + button_id?: number, + url?: string +}; + +export type MessagesHidePeerSettingsBar = { + peer: InputPeer +}; + +export type MessagesGetScheduledHistory = { + peer: InputPeer, + hash: string | number +}; + +export type MessagesGetScheduledMessages = { + peer: InputPeer, + id: Array +}; + +export type MessagesSendScheduledMessages = { + peer: InputPeer, + id: Array +}; + +export type MessagesDeleteScheduledMessages = { + peer: InputPeer, + id: Array +}; + +export type MessagesGetPollVotes = { + flags?: number, + peer: InputPeer, + id: number, + option?: Uint8Array, + offset?: string, + limit: number +}; + +export type MessagesToggleStickerSets = { + flags?: number, + uninstall?: boolean, + archive?: boolean, + unarchive?: boolean, + stickersets: Array +}; + +export type MessagesGetDialogFilters = { + +}; + +export type MessagesGetSuggestedDialogFilters = { + +}; + +export type MessagesUpdateDialogFilter = { + flags?: number, + id: number, + filter?: DialogFilter +}; + +export type MessagesUpdateDialogFiltersOrder = { + order: Array +}; + +export type MessagesGetOldFeaturedStickers = { + offset: number, + limit: number, + hash: string | number +}; + +export type MessagesGetReplies = { + peer: InputPeer, + msg_id: number, + offset_id: number, + offset_date: number, + add_offset: number, + limit: number, + max_id: number, + min_id: number, + hash: string | number +}; + +export type MessagesGetDiscussionMessage = { + peer: InputPeer, + msg_id: number +}; + +export type MessagesReadDiscussion = { + peer: InputPeer, + msg_id: number, + read_max_id: number +}; + +export type MessagesUnpinAllMessages = { + peer: InputPeer +}; + +export type MessagesDeleteChat = { + chat_id: string | number +}; + +export type MessagesDeletePhoneCallHistory = { + flags?: number, + revoke?: boolean +}; + +export type MessagesCheckHistoryImport = { + import_head: string +}; + +export type MessagesInitHistoryImport = { + peer: InputPeer, + file: InputFile, + media_count: number +}; + +export type MessagesUploadImportedMedia = { + peer: InputPeer, + import_id: string | number, + file_name: string, + media: InputMedia +}; + +export type MessagesStartHistoryImport = { + peer: InputPeer, + import_id: string | number +}; + +export type MessagesGetExportedChatInvites = { + flags?: number, + revoked?: boolean, + peer: InputPeer, + admin_id: InputUser, + offset_date?: number, + offset_link?: string, + limit: number +}; + +export type MessagesGetExportedChatInvite = { + peer: InputPeer, + link: string +}; + +export type MessagesEditExportedChatInvite = { + flags?: number, + revoked?: boolean, + peer: InputPeer, + link: string, + expire_date?: number, + usage_limit?: number +}; + +export type MessagesDeleteRevokedExportedChatInvites = { + peer: InputPeer, + admin_id: InputUser +}; + +export type MessagesDeleteExportedChatInvite = { + peer: InputPeer, + link: string +}; + +export type MessagesGetAdminsWithInvites = { + peer: InputPeer +}; + +export type MessagesGetChatInviteImporters = { + peer: InputPeer, + link: string, + offset_date: number, + offset_user: InputUser, + limit: number +}; + +export type MessagesSetHistoryTTL = { + peer: InputPeer, + period: number +}; + +export type MessagesCheckHistoryImportPeer = { + peer: InputPeer +}; + +export type MessagesSetChatTheme = { + peer: InputPeer, + emoticon: string +}; + +export type MessagesGetMessageReadParticipants = { + peer: InputPeer, + msg_id: number +}; + +export type UpdatesGetState = { + +}; + +export type UpdatesGetDifference = { + flags?: number, + pts: number, + pts_total_limit?: number, + date: number, + qts: number +}; + +export type UpdatesGetChannelDifference = { + flags?: number, + force?: boolean, + channel: InputChannel, + filter: ChannelMessagesFilter, + pts: number, + limit: number +}; + +export type PhotosUpdateProfilePhoto = { + id: InputPhoto +}; + +export type PhotosUploadProfilePhoto = { + flags?: number, + file?: InputFile, + video?: InputFile, + video_start_ts?: number +}; + +export type PhotosDeletePhotos = { + id: Array +}; + +export type PhotosGetUserPhotos = { + user_id: InputUser, + offset: number, + max_id: string | number, + limit: number +}; + +export type UploadSaveFilePart = { + file_id: string | number, + file_part: number, + bytes: Uint8Array +}; + +export type UploadGetFile = { + flags?: number, + precise?: boolean, + cdn_supported?: boolean, + location: InputFileLocation, + offset: number, + limit: number +}; + +export type UploadSaveBigFilePart = { + file_id: string | number, + file_part: number, + file_total_parts: number, + bytes: Uint8Array +}; + +export type UploadGetWebFile = { + location: InputWebFileLocation, + offset: number, + limit: number +}; + +export type UploadGetCdnFile = { + file_token: Uint8Array, + offset: number, + limit: number +}; + +export type UploadReuploadCdnFile = { + file_token: Uint8Array, + request_token: Uint8Array +}; + +export type UploadGetCdnFileHashes = { + file_token: Uint8Array, + offset: number +}; + +export type UploadGetFileHashes = { + location: InputFileLocation, + offset: number +}; + +export type HelpGetConfig = { + +}; + +export type HelpGetNearestDc = { + +}; + +export type HelpGetAppUpdate = { + source: string +}; + +export type HelpGetInviteText = { + +}; + +export type HelpGetSupport = { + +}; + +export type HelpGetAppChangelog = { + prev_app_version: string +}; + +export type HelpSetBotUpdatesStatus = { + pending_updates_count: number, + message: string +}; + +export type HelpGetCdnConfig = { + +}; + +export type HelpGetRecentMeUrls = { + referer: string +}; + +export type HelpGetTermsOfServiceUpdate = { + +}; + +export type HelpAcceptTermsOfService = { + id: DataJSON +}; + +export type HelpGetDeepLinkInfo = { + path: string +}; + +export type HelpGetAppConfig = { + +}; + +export type HelpSaveAppLog = { + events: Array +}; + +export type HelpGetPassportConfig = { + hash: number +}; + +export type HelpGetSupportName = { + +}; + +export type HelpGetUserInfo = { + user_id: InputUser +}; + +export type HelpEditUserInfo = { + user_id: InputUser, + message: string, + entities: Array +}; + +export type HelpGetPromoData = { + +}; + +export type HelpHidePromoData = { + peer: InputPeer +}; + +export type HelpDismissSuggestion = { + peer: InputPeer, + suggestion: string +}; + +export type HelpGetCountriesList = { + lang_code: string, + hash: number +}; + export type ChannelsReadHistory = { channel: InputChannel, max_id: number @@ -10530,7 +11723,7 @@ export type ChannelsGetParticipants = { filter: ChannelParticipantsFilter, offset: number, limit: number, - hash: number + hash: string | number }; export type ChannelsGetParticipant = { @@ -10601,93 +11794,6 @@ export type ChannelsDeleteChannel = { channel: InputChannel }; -export type UpdatesGetChannelDifference = { - flags?: number, - force?: boolean, - channel: InputChannel, - filter: ChannelMessagesFilter, - pts: number, - limit: number -}; - -export type MessagesEditChatAdmin = { - chat_id: number, - user_id: InputUser, - is_admin: boolean -}; - -export type MessagesMigrateChat = { - chat_id: number -}; - -export type MessagesSearchGlobal = { - flags?: number, - folder_id?: number, - q: string, - filter: MessagesFilter, - min_date: number, - max_date: number, - offset_rate: number, - offset_peer: InputPeer, - offset_id: number, - limit: number -}; - -export type MessagesReorderStickerSets = { - flags?: number, - masks?: boolean, - order: Array -}; - -export type MessagesGetDocumentByHash = { - sha256: Uint8Array, - size: number, - mime_type: string -}; - -export type MessagesGetSavedGifs = { - hash: number -}; - -export type MessagesSaveGif = { - id: InputDocument, - unsave: boolean -}; - -export type MessagesGetInlineBotResults = { - flags?: number, - bot: InputUser, - peer: InputPeer, - geo_point?: InputGeoPoint, - query: string, - offset: string -}; - -export type MessagesSetInlineBotResults = { - flags?: number, - gallery?: boolean, - private?: boolean, - query_id: string, - results: Array, - cache_time: number, - next_offset?: string, - switch_pm?: InlineBotSwitchPM -}; - -export type MessagesSendInlineBotResult = { - flags?: number, - silent?: boolean, - background?: boolean, - clear_draft?: boolean, - hide_via?: boolean, - peer: InputPeer, - reply_to_msg_id?: number, - random_id: string, - query_id: string, - id: string, - schedule_date?: number -}; - export type ChannelsExportMessageLink = { flags?: number, grouped?: boolean, @@ -10701,224 +11807,94 @@ export type ChannelsToggleSignatures = { enabled: boolean }; -export type AuthResendCode = { - phone_number: string, - phone_code_hash: string -}; - -export type AuthCancelCode = { - phone_number: string, - phone_code_hash: string -}; - -export type MessagesGetMessageEditData = { - peer: InputPeer, - id: number -}; - -export type MessagesEditMessage = { - flags?: number, - no_webpage?: boolean, - peer: InputPeer, - id: number, - message?: string, - media?: InputMedia, - reply_markup?: ReplyMarkup, - entities?: Array, - schedule_date?: number -}; - -export type MessagesEditInlineBotMessage = { - flags?: number, - no_webpage?: boolean, - id: InputBotInlineMessageID, - message?: string, - media?: InputMedia, - reply_markup?: ReplyMarkup, - entities?: Array -}; - -export type MessagesGetBotCallbackAnswer = { - flags?: number, - game?: boolean, - peer: InputPeer, - msg_id: number, - data?: Uint8Array, - password?: InputCheckPasswordSRP -}; - -export type MessagesSetBotCallbackAnswer = { - flags?: number, - alert?: boolean, - query_id: string, - message?: string, - url?: string, - cache_time: number -}; - -export type ContactsGetTopPeers = { - flags?: number, - correspondents?: boolean, - bots_pm?: boolean, - bots_inline?: boolean, - phone_calls?: boolean, - forward_users?: boolean, - forward_chats?: boolean, - groups?: boolean, - channels?: boolean, - offset: number, - limit: number, - hash: number -}; - -export type ContactsResetTopPeerRating = { - category: TopPeerCategory, - peer: InputPeer -}; - -export type MessagesGetPeerDialogs = { - peers: Array -}; - -export type MessagesSaveDraft = { - flags?: number, - no_webpage?: boolean, - reply_to_msg_id?: number, - peer: InputPeer, - message: string, - entities?: Array -}; - -export type MessagesGetAllDrafts = { - -}; - -export type MessagesGetFeaturedStickers = { - hash: number -}; - -export type MessagesReadFeaturedStickers = { - id: Array -}; - -export type MessagesGetRecentStickers = { - flags?: number, - attached?: boolean, - hash: number -}; - -export type MessagesSaveRecentSticker = { - flags?: number, - attached?: boolean, - id: InputDocument, - unsave: boolean -}; - -export type MessagesClearRecentStickers = { - flags?: number, - attached?: boolean -}; - -export type MessagesGetArchivedStickers = { - flags?: number, - masks?: boolean, - offset_id: string, - limit: number -}; - -export type AccountSendConfirmPhoneCode = { - hash: string, - settings: CodeSettings -}; - -export type AccountConfirmPhone = { - phone_code_hash: string, - phone_code: string -}; - export type ChannelsGetAdminedPublicChannels = { flags?: number, by_location?: boolean, check_limit?: boolean }; -export type MessagesGetMaskStickers = { - hash: number +export type ChannelsEditBanned = { + channel: InputChannel, + participant: InputPeer, + banned_rights: ChatBannedRights }; -export type MessagesGetAttachedStickers = { - media: InputStickeredMedia -}; - -export type AuthDropTempAuthKeys = { - except_auth_keys: Array -}; - -export type MessagesSetGameScore = { +export type ChannelsGetAdminLog = { flags?: number, - edit_message?: boolean, - force?: boolean, - peer: InputPeer, - id: number, - user_id: InputUser, - score: number -}; - -export type MessagesSetInlineGameScore = { - flags?: number, - edit_message?: boolean, - force?: boolean, - id: InputBotInlineMessageID, - user_id: InputUser, - score: number -}; - -export type MessagesGetGameHighScores = { - peer: InputPeer, - id: number, - user_id: InputUser -}; - -export type MessagesGetInlineGameHighScores = { - id: InputBotInlineMessageID, - user_id: InputUser -}; - -export type MessagesGetCommonChats = { - user_id: InputUser, - max_id: number, + channel: InputChannel, + q: string, + events_filter?: ChannelAdminLogEventsFilter, + admins?: Array, + max_id: string | number, + min_id: string | number, limit: number }; -export type MessagesGetAllChats = { - except_ids: Array +export type ChannelsSetStickers = { + channel: InputChannel, + stickerset: InputStickerSet }; -export type HelpSetBotUpdatesStatus = { - pending_updates_count: number, - message: string +export type ChannelsReadMessageContents = { + channel: InputChannel, + id: Array }; -export type MessagesGetWebPage = { - url: string, - hash: number +export type ChannelsDeleteHistory = { + channel: InputChannel, + max_id: number }; -export type MessagesToggleDialogPin = { - flags?: number, - pinned?: boolean, - peer: InputDialogPeer +export type ChannelsTogglePreHistoryHidden = { + channel: InputChannel, + enabled: boolean }; -export type MessagesReorderPinnedDialogs = { - flags?: number, - force?: boolean, - folder_id: number, - order: Array +export type ChannelsGetLeftChannels = { + offset: number }; -export type MessagesGetPinnedDialogs = { - folder_id: number +export type ChannelsGetGroupsForDiscussion = { + +}; + +export type ChannelsSetDiscussionGroup = { + broadcast: InputChannel, + group: InputChannel +}; + +export type ChannelsEditCreator = { + channel: InputChannel, + user_id: InputUser, + password: InputCheckPasswordSRP +}; + +export type ChannelsEditLocation = { + channel: InputChannel, + geo_point: InputGeoPoint, + address: string +}; + +export type ChannelsToggleSlowMode = { + channel: InputChannel, + seconds: number +}; + +export type ChannelsGetInactiveChannels = { + +}; + +export type ChannelsConvertToGigagroup = { + channel: InputChannel +}; + +export type ChannelsViewSponsoredMessage = { + channel: InputChannel, + random_id: Uint8Array +}; + +export type ChannelsGetSponsoredMessages = { + channel: InputChannel }; export type BotsSendCustomRequest = { @@ -10927,14 +11903,24 @@ export type BotsSendCustomRequest = { }; export type BotsAnswerWebhookJSONQuery = { - query_id: string, + query_id: string | number, data: DataJSON }; -export type UploadGetWebFile = { - location: InputWebFileLocation, - offset: number, - limit: number +export type BotsSetBotCommands = { + scope: BotCommandScope, + lang_code: string, + commands: Array +}; + +export type BotsResetBotCommands = { + scope: BotCommandScope, + lang_code: string +}; + +export type BotsGetBotCommands = { + scope: BotCommandScope, + lang_code: string }; export type PaymentsGetPaymentForm = { @@ -10959,18 +11945,13 @@ export type PaymentsValidateRequestedInfo = { export type PaymentsSendPaymentForm = { flags?: number, - form_id: string, + form_id: string | number, peer: InputPeer, msg_id: number, requested_info_id?: string, shipping_option_id?: string, credentials: InputPaymentCredentials, - tip_amount?: string -}; - -export type AccountGetTmpPassword = { - password: InputCheckPasswordSRP, - period: number + tip_amount?: string | number }; export type PaymentsGetSavedInfo = { @@ -10983,18 +11964,8 @@ export type PaymentsClearSavedInfo = { info?: boolean }; -export type MessagesSetBotShippingResults = { - flags?: number, - query_id: string, - error?: string, - shipping_options?: Array -}; - -export type MessagesSetBotPrecheckoutResults = { - flags?: number, - success?: boolean, - query_id: string, - error?: string +export type PaymentsGetBankCardData = { + number: string }; export type StickersCreateStickerSet = { @@ -11023,9 +11994,17 @@ export type StickersAddStickerToSet = { sticker: InputStickerSetItem }; -export type MessagesUploadMedia = { - peer: InputPeer, - media: InputMedia +export type StickersSetStickerSetThumb = { + stickerset: InputStickerSet, + thumb: InputDocument +}; + +export type StickersCheckShortName = { + short_name: string +}; + +export type StickersSuggestShortName = { + title: string }; export type PhoneGetCallConfig = { @@ -11050,7 +12029,7 @@ export type PhoneAcceptCall = { export type PhoneConfirmCall = { peer: InputPhoneCall, g_a: Uint8Array, - key_fingerprint: string, + key_fingerprint: string | number, protocol: PhoneCallProtocol }; @@ -11064,7 +12043,7 @@ export type PhoneDiscardCall = { peer: InputPhoneCall, duration: number, reason: PhoneCallDiscardReason, - connection_id: string + connection_id: string | number }; export type PhoneSetCallRating = { @@ -11080,777 +12059,11 @@ export type PhoneSaveCallDebug = { debug: DataJSON }; -export type UploadGetCdnFile = { - file_token: Uint8Array, - offset: number, - limit: number -}; - -export type UploadReuploadCdnFile = { - file_token: Uint8Array, - request_token: Uint8Array -}; - -export type HelpGetCdnConfig = { - -}; - -export type LangpackGetLangPack = { - lang_pack: string, - lang_code: string -}; - -export type LangpackGetStrings = { - lang_pack: string, - lang_code: string, - keys: Array -}; - -export type LangpackGetDifference = { - lang_pack: string, - lang_code: string, - from_version: number -}; - -export type LangpackGetLanguages = { - lang_pack: string -}; - -export type ChannelsEditBanned = { - channel: InputChannel, - participant: InputPeer, - banned_rights: ChatBannedRights -}; - -export type ChannelsGetAdminLog = { - flags?: number, - channel: InputChannel, - q: string, - events_filter?: ChannelAdminLogEventsFilter, - admins?: Array, - max_id: string, - min_id: string, - limit: number -}; - -export type UploadGetCdnFileHashes = { - file_token: Uint8Array, - offset: number -}; - -export type MessagesSendScreenshotNotification = { - peer: InputPeer, - reply_to_msg_id: number, - random_id: string -}; - -export type ChannelsSetStickers = { - channel: InputChannel, - stickerset: InputStickerSet -}; - -export type MessagesGetFavedStickers = { - hash: number -}; - -export type MessagesFaveSticker = { - id: InputDocument, - unfave: boolean -}; - -export type ChannelsReadMessageContents = { - channel: InputChannel, - id: Array -}; - -export type ContactsResetSaved = { - -}; - -export type MessagesGetUnreadMentions = { - peer: InputPeer, - offset_id: number, - add_offset: number, - limit: number, - max_id: number, - min_id: number -}; - -export type ChannelsDeleteHistory = { - channel: InputChannel, - max_id: number -}; - -export type HelpGetRecentMeUrls = { - referer: string -}; - -export type ChannelsTogglePreHistoryHidden = { - channel: InputChannel, - enabled: boolean -}; - -export type MessagesReadMentions = { - peer: InputPeer -}; - -export type MessagesGetRecentLocations = { - peer: InputPeer, - limit: number, - hash: number -}; - -export type MessagesSendMultiMedia = { - flags?: number, - silent?: boolean, - background?: boolean, - clear_draft?: boolean, - peer: InputPeer, - reply_to_msg_id?: number, - multi_media: Array, - schedule_date?: number -}; - -export type MessagesUploadEncryptedFile = { - peer: InputEncryptedChat, - file: InputEncryptedFile -}; - -export type AccountGetWebAuthorizations = { - -}; - -export type AccountResetWebAuthorization = { - hash: string -}; - -export type AccountResetWebAuthorizations = { - -}; - -export type MessagesSearchStickerSets = { - flags?: number, - exclude_featured?: boolean, - q: string, - hash: number -}; - -export type UploadGetFileHashes = { - location: InputFileLocation, - offset: number -}; - -export type HelpGetTermsOfServiceUpdate = { - -}; - -export type HelpAcceptTermsOfService = { - id: DataJSON -}; - -export type AccountGetAllSecureValues = { - -}; - -export type AccountGetSecureValue = { - types: Array -}; - -export type AccountSaveSecureValue = { - value: InputSecureValue, - secure_secret_id: string -}; - -export type AccountDeleteSecureValue = { - types: Array -}; - -export type UsersSetSecureValueErrors = { - id: InputUser, - errors: Array -}; - -export type AccountGetAuthorizationForm = { - bot_id: number, - scope: string, - public_key: string -}; - -export type AccountAcceptAuthorization = { - bot_id: number, - scope: string, - public_key: string, - value_hashes: Array, - credentials: SecureCredentialsEncrypted -}; - -export type AccountSendVerifyPhoneCode = { - phone_number: string, - settings: CodeSettings -}; - -export type AccountVerifyPhone = { - phone_number: string, - phone_code_hash: string, - phone_code: string -}; - -export type AccountSendVerifyEmailCode = { - email: string -}; - -export type AccountVerifyEmail = { - email: string, - code: string -}; - -export type HelpGetDeepLinkInfo = { - path: string -}; - -export type ContactsGetSaved = { - -}; - -export type ChannelsGetLeftChannels = { - offset: number -}; - -export type AccountInitTakeoutSession = { - flags?: number, - contacts?: boolean, - message_users?: boolean, - message_chats?: boolean, - message_megagroups?: boolean, - message_channels?: boolean, - files?: boolean, - file_max_size?: number -}; - -export type AccountFinishTakeoutSession = { - flags?: number, - success?: boolean -}; - -export type MessagesGetSplitRanges = { - -}; - -export type InvokeWithMessagesRange = { - range: MessageRange, - query: any -}; - -export type InvokeWithTakeout = { - takeout_id: string, - query: any -}; - -export type MessagesMarkDialogUnread = { - flags?: number, - unread?: boolean, - peer: InputDialogPeer -}; - -export type MessagesGetDialogUnreadMarks = { - -}; - -export type ContactsToggleTopPeers = { - enabled: boolean -}; - -export type MessagesClearAllDrafts = { - -}; - -export type HelpGetAppConfig = { - -}; - -export type HelpSaveAppLog = { - events: Array -}; - -export type HelpGetPassportConfig = { - hash: number -}; - -export type LangpackGetLanguage = { - lang_pack: string, - lang_code: string -}; - -export type MessagesUpdatePinnedMessage = { - flags?: number, - silent?: boolean, - unpin?: boolean, - pm_oneside?: boolean, - peer: InputPeer, - id: number -}; - -export type AccountConfirmPasswordEmail = { - code: string -}; - -export type AccountResendPasswordEmail = { - -}; - -export type AccountCancelPasswordEmail = { - -}; - -export type HelpGetSupportName = { - -}; - -export type HelpGetUserInfo = { - user_id: InputUser -}; - -export type HelpEditUserInfo = { - user_id: InputUser, - message: string, - entities: Array -}; - -export type AccountGetContactSignUpNotification = { - -}; - -export type AccountSetContactSignUpNotification = { - silent: boolean -}; - -export type AccountGetNotifyExceptions = { - flags?: number, - compare_sound?: boolean, - peer?: InputNotifyPeer -}; - -export type MessagesSendVote = { - peer: InputPeer, - msg_id: number, - options: Array -}; - -export type MessagesGetPollResults = { - peer: InputPeer, - msg_id: number -}; - -export type MessagesGetOnlines = { - peer: InputPeer -}; - -export type MessagesGetStatsURL = { - flags?: number, - dark?: boolean, - peer: InputPeer, - params: string -}; - -export type MessagesEditChatAbout = { - peer: InputPeer, - about: string -}; - -export type MessagesEditChatDefaultBannedRights = { - peer: InputPeer, - banned_rights: ChatBannedRights -}; - -export type AccountGetWallPaper = { - wallpaper: InputWallPaper -}; - -export type AccountUploadWallPaper = { - file: InputFile, - mime_type: string, - settings: WallPaperSettings -}; - -export type AccountSaveWallPaper = { - wallpaper: InputWallPaper, - unsave: boolean, - settings: WallPaperSettings -}; - -export type AccountInstallWallPaper = { - wallpaper: InputWallPaper, - settings: WallPaperSettings -}; - -export type AccountResetWallPapers = { - -}; - -export type AccountGetAutoDownloadSettings = { - -}; - -export type AccountSaveAutoDownloadSettings = { - flags?: number, - low?: boolean, - high?: boolean, - settings: AutoDownloadSettings -}; - -export type MessagesGetEmojiKeywords = { - lang_code: string -}; - -export type MessagesGetEmojiKeywordsDifference = { - lang_code: string, - from_version: number -}; - -export type MessagesGetEmojiKeywordsLanguages = { - lang_codes: Array -}; - -export type MessagesGetEmojiURL = { - lang_code: string -}; - -export type FoldersEditPeerFolders = { - folder_peers: Array -}; - -export type FoldersDeleteFolder = { - folder_id: number -}; - -export type MessagesGetSearchCounters = { - peer: InputPeer, - filters: Array -}; - -export type ChannelsGetGroupsForDiscussion = { - -}; - -export type ChannelsSetDiscussionGroup = { - broadcast: InputChannel, - group: InputChannel -}; - -export type MessagesRequestUrlAuth = { - flags?: number, - peer?: InputPeer, - msg_id?: number, - button_id?: number, - url?: string -}; - -export type MessagesAcceptUrlAuth = { - flags?: number, - write_allowed?: boolean, - peer?: InputPeer, - msg_id?: number, - button_id?: number, - url?: string -}; - -export type MessagesHidePeerSettingsBar = { - peer: InputPeer -}; - -export type ContactsAddContact = { - flags?: number, - add_phone_privacy_exception?: boolean, - id: InputUser, - first_name: string, - last_name: string, - phone: string -}; - -export type ContactsAcceptContact = { - id: InputUser -}; - -export type ChannelsEditCreator = { - channel: InputChannel, - user_id: InputUser, - password: InputCheckPasswordSRP -}; - -export type ContactsGetLocated = { - flags?: number, - background?: boolean, - geo_point: InputGeoPoint, - self_expires?: number -}; - -export type ChannelsEditLocation = { - channel: InputChannel, - geo_point: InputGeoPoint, - address: string -}; - -export type ChannelsToggleSlowMode = { - channel: InputChannel, - seconds: number -}; - -export type MessagesGetScheduledHistory = { - peer: InputPeer, - hash: number -}; - -export type MessagesGetScheduledMessages = { - peer: InputPeer, - id: Array -}; - -export type MessagesSendScheduledMessages = { - peer: InputPeer, - id: Array -}; - -export type MessagesDeleteScheduledMessages = { - peer: InputPeer, - id: Array -}; - -export type AccountUploadTheme = { - flags?: number, - file: InputFile, - thumb?: InputFile, - file_name: string, - mime_type: string -}; - -export type AccountCreateTheme = { - flags?: number, - slug: string, - title: string, - document?: InputDocument, - settings?: InputThemeSettings -}; - -export type AccountUpdateTheme = { - flags?: number, - format: string, - theme: InputTheme, - slug?: string, - title?: string, - document?: InputDocument, - settings?: InputThemeSettings -}; - -export type AccountSaveTheme = { - theme: InputTheme, - unsave: boolean -}; - -export type AccountInstallTheme = { - flags?: number, - dark?: boolean, - format?: string, - theme?: InputTheme -}; - -export type AccountGetTheme = { - format: string, - theme: InputTheme, - document_id: string -}; - -export type AccountGetThemes = { - format: string, - hash: number -}; - -export type AuthExportLoginToken = { - api_id: number, - api_hash: string, - except_ids: Array -}; - -export type AuthImportLoginToken = { - token: Uint8Array -}; - -export type AuthAcceptLoginToken = { - token: Uint8Array -}; - -export type AccountSetContentSettings = { - flags?: number, - sensitive_enabled?: boolean -}; - -export type AccountGetContentSettings = { - -}; - -export type ChannelsGetInactiveChannels = { - -}; - -export type AccountGetMultiWallPapers = { - wallpapers: Array -}; - -export type MessagesGetPollVotes = { - flags?: number, - peer: InputPeer, - id: number, - option?: Uint8Array, - offset?: string, - limit: number -}; - -export type MessagesToggleStickerSets = { - flags?: number, - uninstall?: boolean, - archive?: boolean, - unarchive?: boolean, - stickersets: Array -}; - -export type PaymentsGetBankCardData = { - number: string -}; - -export type MessagesGetDialogFilters = { - -}; - -export type MessagesGetSuggestedDialogFilters = { - -}; - -export type MessagesUpdateDialogFilter = { - flags?: number, - id: number, - filter?: DialogFilter -}; - -export type MessagesUpdateDialogFiltersOrder = { - order: Array -}; - -export type StatsGetBroadcastStats = { - flags?: number, - dark?: boolean, - channel: InputChannel -}; - -export type StatsLoadAsyncGraph = { - flags?: number, - token: string, - x?: string -}; - -export type StickersSetStickerSetThumb = { - stickerset: InputStickerSet, - thumb: InputDocument -}; - -export type BotsSetBotCommands = { - scope: BotCommandScope, - lang_code: string, - commands: Array -}; - -export type MessagesGetOldFeaturedStickers = { - offset: number, - limit: number, - hash: number -}; - -export type HelpGetPromoData = { - -}; - -export type HelpHidePromoData = { - peer: InputPeer -}; - export type PhoneSendSignalingData = { peer: InputPhoneCall, data: Uint8Array }; -export type StatsGetMegagroupStats = { - flags?: number, - dark?: boolean, - channel: InputChannel -}; - -export type AccountGetGlobalPrivacySettings = { - -}; - -export type AccountSetGlobalPrivacySettings = { - settings: GlobalPrivacySettings -}; - -export type HelpDismissSuggestion = { - peer: InputPeer, - suggestion: string -}; - -export type HelpGetCountriesList = { - lang_code: string, - hash: number -}; - -export type MessagesGetReplies = { - peer: InputPeer, - msg_id: number, - offset_id: number, - offset_date: number, - add_offset: number, - limit: number, - max_id: number, - min_id: number, - hash: number -}; - -export type MessagesGetDiscussionMessage = { - peer: InputPeer, - msg_id: number -}; - -export type MessagesReadDiscussion = { - peer: InputPeer, - msg_id: number, - read_max_id: number -}; - -export type ContactsBlockFromReplies = { - flags?: number, - delete_message?: boolean, - delete_history?: boolean, - report_spam?: boolean, - msg_id: number -}; - -export type StatsGetMessagePublicForwards = { - channel: InputChannel, - msg_id: number, - offset_rate: number, - offset_peer: InputPeer, - offset_id: number, - limit: number -}; - -export type StatsGetMessageStats = { - flags?: number, - dark?: boolean, - channel: InputChannel, - msg_id: number -}; - -export type MessagesUnpinAllMessages = { - peer: InputPeer -}; - export type PhoneCreateGroupCall = { flags?: number, peer: InputPeer, @@ -11908,108 +12121,13 @@ export type PhoneCheckGroupCall = { sources: Array }; -export type MessagesDeleteChat = { - chat_id: number -}; - -export type MessagesDeletePhoneCallHistory = { - flags?: number, - revoke?: boolean -}; - -export type MessagesCheckHistoryImport = { - import_head: string -}; - -export type MessagesInitHistoryImport = { - peer: InputPeer, - file: InputFile, - media_count: number -}; - -export type MessagesUploadImportedMedia = { - peer: InputPeer, - import_id: string, - file_name: string, - media: InputMedia -}; - -export type MessagesStartHistoryImport = { - peer: InputPeer, - import_id: string -}; - -export type MessagesGetExportedChatInvites = { - flags?: number, - revoked?: boolean, - peer: InputPeer, - admin_id: InputUser, - offset_date?: number, - offset_link?: string, - limit: number -}; - -export type MessagesGetExportedChatInvite = { - peer: InputPeer, - link: string -}; - -export type MessagesEditExportedChatInvite = { - flags?: number, - revoked?: boolean, - peer: InputPeer, - link: string, - expire_date?: number, - usage_limit?: number -}; - -export type MessagesDeleteRevokedExportedChatInvites = { - peer: InputPeer, - admin_id: InputUser -}; - -export type MessagesDeleteExportedChatInvite = { - peer: InputPeer, - link: string -}; - -export type MessagesGetAdminsWithInvites = { - peer: InputPeer -}; - -export type MessagesGetChatInviteImporters = { - peer: InputPeer, - link: string, - offset_date: number, - offset_user: InputUser, - limit: number -}; - -export type MessagesSetHistoryTTL = { - peer: InputPeer, - period: number -}; - -export type AccountReportProfilePhoto = { - peer: InputPeer, - photo_id: InputPhoto, - reason: ReportReason, - message: string -}; - -export type ChannelsConvertToGigagroup = { - channel: InputChannel -}; - -export type MessagesCheckHistoryImportPeer = { - peer: InputPeer -}; - export type PhoneToggleGroupCallRecord = { flags?: number, start?: boolean, + video?: boolean, call: InputGroupCall, - title?: string + title?: string, + video_portrait?: boolean }; export type PhoneEditGroupCallParticipant = { @@ -12062,39 +12180,82 @@ export type PhoneLeaveGroupCallPresentation = { call: InputGroupCall }; -export type StickersCheckShortName = { - short_name: string -}; - -export type StickersSuggestShortName = { - title: string -}; - -export type BotsResetBotCommands = { - scope: BotCommandScope, +export type LangpackGetLangPack = { + lang_pack: string, lang_code: string }; -export type BotsGetBotCommands = { - scope: BotCommandScope, +export type LangpackGetStrings = { + lang_pack: string, + lang_code: string, + keys: Array +}; + +export type LangpackGetDifference = { + lang_pack: string, + lang_code: string, + from_version: number +}; + +export type LangpackGetLanguages = { + lang_pack: string +}; + +export type LangpackGetLanguage = { + lang_pack: string, lang_code: string }; -export type AccountResetPassword = { - +export type FoldersEditPeerFolders = { + folder_peers: Array }; -export type AccountDeclinePasswordReset = { - +export type FoldersDeleteFolder = { + folder_id: number }; -export type AuthCheckRecoveryPassword = { - code: string +export type StatsGetBroadcastStats = { + flags?: number, + dark?: boolean, + channel: InputChannel +}; + +export type StatsLoadAsyncGraph = { + flags?: number, + token: string, + x?: string | number +}; + +export type StatsGetMegagroupStats = { + flags?: number, + dark?: boolean, + channel: InputChannel +}; + +export type StatsGetMessagePublicForwards = { + channel: InputChannel, + msg_id: number, + offset_rate: number, + offset_peer: InputPeer, + offset_id: number, + limit: number +}; + +export type StatsGetMessageStats = { + flags?: number, + dark?: boolean, + channel: InputChannel, + msg_id: number }; export interface MethodDeclMap { 'invokeAfterMsg': {req: InvokeAfterMsg, res: any}, 'invokeAfterMsgs': {req: InvokeAfterMsgs, res: any}, + 'initConnection': {req: InitConnection, res: any}, + 'invokeWithLayer': {req: InvokeWithLayer, res: any}, + 'invokeWithoutUpdates': {req: InvokeWithoutUpdates, res: any}, + 'invokeWithMessagesRange': {req: InvokeWithMessagesRange, res: any}, + 'invokeWithTakeout': {req: InvokeWithTakeout, res: any}, 'auth.sendCode': {req: AuthSendCode, res: AuthSentCode}, 'auth.signUp': {req: AuthSignUp, res: AuthAuthorization}, 'auth.signIn': {req: AuthSignIn, res: AuthAuthorization}, @@ -12103,6 +12264,17 @@ export interface MethodDeclMap { 'auth.exportAuthorization': {req: AuthExportAuthorization, res: AuthExportedAuthorization}, 'auth.importAuthorization': {req: AuthImportAuthorization, res: AuthAuthorization}, 'auth.bindTempAuthKey': {req: AuthBindTempAuthKey, res: boolean}, + 'auth.importBotAuthorization': {req: AuthImportBotAuthorization, res: AuthAuthorization}, + 'auth.checkPassword': {req: AuthCheckPassword, res: AuthAuthorization}, + 'auth.requestPasswordRecovery': {req: AuthRequestPasswordRecovery, res: AuthPasswordRecovery}, + 'auth.recoverPassword': {req: AuthRecoverPassword, res: AuthAuthorization}, + 'auth.resendCode': {req: AuthResendCode, res: AuthSentCode}, + 'auth.cancelCode': {req: AuthCancelCode, res: boolean}, + 'auth.dropTempAuthKeys': {req: AuthDropTempAuthKeys, res: boolean}, + 'auth.exportLoginToken': {req: AuthExportLoginToken, res: AuthLoginToken}, + 'auth.importLoginToken': {req: AuthImportLoginToken, res: AuthLoginToken}, + 'auth.acceptLoginToken': {req: AuthAcceptLoginToken, res: Authorization}, + 'auth.checkRecoveryPassword': {req: AuthCheckRecoveryPassword, res: boolean}, 'account.registerDevice': {req: AccountRegisterDevice, res: boolean}, 'account.unregisterDevice': {req: AccountUnregisterDevice, res: boolean}, 'account.updateNotifySettings': {req: AccountUpdateNotifySettings, res: boolean}, @@ -12112,8 +12284,71 @@ export interface MethodDeclMap { 'account.updateStatus': {req: AccountUpdateStatus, res: boolean}, 'account.getWallPapers': {req: AccountGetWallPapers, res: AccountWallPapers}, 'account.reportPeer': {req: AccountReportPeer, res: boolean}, + 'account.checkUsername': {req: AccountCheckUsername, res: boolean}, + 'account.updateUsername': {req: AccountUpdateUsername, res: User}, + 'account.getPrivacy': {req: AccountGetPrivacy, res: AccountPrivacyRules}, + 'account.setPrivacy': {req: AccountSetPrivacy, res: AccountPrivacyRules}, + 'account.deleteAccount': {req: AccountDeleteAccount, res: boolean}, + 'account.getAccountTTL': {req: AccountGetAccountTTL, res: AccountDaysTTL}, + 'account.setAccountTTL': {req: AccountSetAccountTTL, res: boolean}, + 'account.sendChangePhoneCode': {req: AccountSendChangePhoneCode, res: AuthSentCode}, + 'account.changePhone': {req: AccountChangePhone, res: User}, + 'account.updateDeviceLocked': {req: AccountUpdateDeviceLocked, res: boolean}, + 'account.getAuthorizations': {req: AccountGetAuthorizations, res: AccountAuthorizations}, + 'account.resetAuthorization': {req: AccountResetAuthorization, res: boolean}, + 'account.getPassword': {req: AccountGetPassword, res: AccountPassword}, + 'account.getPasswordSettings': {req: AccountGetPasswordSettings, res: AccountPasswordSettings}, + 'account.updatePasswordSettings': {req: AccountUpdatePasswordSettings, res: boolean}, + 'account.sendConfirmPhoneCode': {req: AccountSendConfirmPhoneCode, res: AuthSentCode}, + 'account.confirmPhone': {req: AccountConfirmPhone, res: boolean}, + 'account.getTmpPassword': {req: AccountGetTmpPassword, res: AccountTmpPassword}, + 'account.getWebAuthorizations': {req: AccountGetWebAuthorizations, res: AccountWebAuthorizations}, + 'account.resetWebAuthorization': {req: AccountResetWebAuthorization, res: boolean}, + 'account.resetWebAuthorizations': {req: AccountResetWebAuthorizations, res: boolean}, + 'account.getAllSecureValues': {req: AccountGetAllSecureValues, res: Array}, + 'account.getSecureValue': {req: AccountGetSecureValue, res: Array}, + 'account.saveSecureValue': {req: AccountSaveSecureValue, res: SecureValue}, + 'account.deleteSecureValue': {req: AccountDeleteSecureValue, res: boolean}, + 'account.getAuthorizationForm': {req: AccountGetAuthorizationForm, res: AccountAuthorizationForm}, + 'account.acceptAuthorization': {req: AccountAcceptAuthorization, res: boolean}, + 'account.sendVerifyPhoneCode': {req: AccountSendVerifyPhoneCode, res: AuthSentCode}, + 'account.verifyPhone': {req: AccountVerifyPhone, res: boolean}, + 'account.sendVerifyEmailCode': {req: AccountSendVerifyEmailCode, res: AccountSentEmailCode}, + 'account.verifyEmail': {req: AccountVerifyEmail, res: boolean}, + 'account.initTakeoutSession': {req: AccountInitTakeoutSession, res: AccountTakeout}, + 'account.finishTakeoutSession': {req: AccountFinishTakeoutSession, res: boolean}, + 'account.confirmPasswordEmail': {req: AccountConfirmPasswordEmail, res: boolean}, + 'account.resendPasswordEmail': {req: AccountResendPasswordEmail, res: boolean}, + 'account.cancelPasswordEmail': {req: AccountCancelPasswordEmail, res: boolean}, + 'account.getContactSignUpNotification': {req: AccountGetContactSignUpNotification, res: boolean}, + 'account.setContactSignUpNotification': {req: AccountSetContactSignUpNotification, res: boolean}, + 'account.getNotifyExceptions': {req: AccountGetNotifyExceptions, res: Updates}, + 'account.getWallPaper': {req: AccountGetWallPaper, res: WallPaper}, + 'account.uploadWallPaper': {req: AccountUploadWallPaper, res: WallPaper}, + 'account.saveWallPaper': {req: AccountSaveWallPaper, res: boolean}, + 'account.installWallPaper': {req: AccountInstallWallPaper, res: boolean}, + 'account.resetWallPapers': {req: AccountResetWallPapers, res: boolean}, + 'account.getAutoDownloadSettings': {req: AccountGetAutoDownloadSettings, res: AccountAutoDownloadSettings}, + 'account.saveAutoDownloadSettings': {req: AccountSaveAutoDownloadSettings, res: boolean}, + 'account.uploadTheme': {req: AccountUploadTheme, res: Document}, + 'account.createTheme': {req: AccountCreateTheme, res: Theme}, + 'account.updateTheme': {req: AccountUpdateTheme, res: Theme}, + 'account.saveTheme': {req: AccountSaveTheme, res: boolean}, + 'account.installTheme': {req: AccountInstallTheme, res: boolean}, + 'account.getTheme': {req: AccountGetTheme, res: Theme}, + 'account.getThemes': {req: AccountGetThemes, res: AccountThemes}, + 'account.setContentSettings': {req: AccountSetContentSettings, res: boolean}, + 'account.getContentSettings': {req: AccountGetContentSettings, res: AccountContentSettings}, + 'account.getMultiWallPapers': {req: AccountGetMultiWallPapers, res: Array}, + 'account.getGlobalPrivacySettings': {req: AccountGetGlobalPrivacySettings, res: GlobalPrivacySettings}, + 'account.setGlobalPrivacySettings': {req: AccountSetGlobalPrivacySettings, res: GlobalPrivacySettings}, + 'account.reportProfilePhoto': {req: AccountReportProfilePhoto, res: boolean}, + 'account.resetPassword': {req: AccountResetPassword, res: AccountResetPasswordResult}, + 'account.declinePasswordReset': {req: AccountDeclinePasswordReset, res: boolean}, + 'account.getChatThemes': {req: AccountGetChatThemes, res: AccountChatThemes}, 'users.getUsers': {req: UsersGetUsers, res: Array}, 'users.getFullUser': {req: UsersGetFullUser, res: UserFull}, + 'users.setSecureValueErrors': {req: UsersSetSecureValueErrors, res: boolean}, 'contacts.getContactIDs': {req: ContactsGetContactIDs, res: Array}, 'contacts.getStatuses': {req: ContactsGetStatuses, res: Array}, 'contacts.getContacts': {req: ContactsGetContacts, res: ContactsContacts}, @@ -12123,6 +12358,17 @@ export interface MethodDeclMap { 'contacts.block': {req: ContactsBlock, res: boolean}, 'contacts.unblock': {req: ContactsUnblock, res: boolean}, 'contacts.getBlocked': {req: ContactsGetBlocked, res: ContactsBlocked}, + 'contacts.search': {req: ContactsSearch, res: ContactsFound}, + 'contacts.resolveUsername': {req: ContactsResolveUsername, res: ContactsResolvedPeer}, + 'contacts.getTopPeers': {req: ContactsGetTopPeers, res: ContactsTopPeers}, + 'contacts.resetTopPeerRating': {req: ContactsResetTopPeerRating, res: boolean}, + 'contacts.resetSaved': {req: ContactsResetSaved, res: boolean}, + 'contacts.getSaved': {req: ContactsGetSaved, res: Array}, + 'contacts.toggleTopPeers': {req: ContactsToggleTopPeers, res: boolean}, + 'contacts.addContact': {req: ContactsAddContact, res: Updates}, + 'contacts.acceptContact': {req: ContactsAcceptContact, res: Updates}, + 'contacts.getLocated': {req: ContactsGetLocated, res: Updates}, + 'contacts.blockFromReplies': {req: ContactsBlockFromReplies, res: Updates}, 'messages.getMessages': {req: MessagesGetMessages, res: MessagesMessages}, 'messages.getDialogs': {req: MessagesGetDialogs, res: MessagesDialogs}, 'messages.getHistory': {req: MessagesGetHistory, res: MessagesMessages}, @@ -12145,18 +12391,6 @@ export interface MethodDeclMap { 'messages.addChatUser': {req: MessagesAddChatUser, res: Updates}, 'messages.deleteChatUser': {req: MessagesDeleteChatUser, res: Updates}, 'messages.createChat': {req: MessagesCreateChat, res: Updates}, - 'updates.getState': {req: UpdatesGetState, res: UpdatesState}, - 'updates.getDifference': {req: UpdatesGetDifference, res: UpdatesDifference}, - 'photos.updateProfilePhoto': {req: PhotosUpdateProfilePhoto, res: PhotosPhoto}, - 'photos.uploadProfilePhoto': {req: PhotosUploadProfilePhoto, res: PhotosPhoto}, - 'photos.deletePhotos': {req: PhotosDeletePhotos, res: Array}, - 'upload.saveFilePart': {req: UploadSaveFilePart, res: boolean}, - 'upload.getFile': {req: UploadGetFile, res: UploadFile}, - 'help.getConfig': {req: HelpGetConfig, res: Config}, - 'help.getNearestDc': {req: HelpGetNearestDc, res: NearestDc}, - 'help.getAppUpdate': {req: HelpGetAppUpdate, res: HelpAppUpdate}, - 'help.getInviteText': {req: HelpGetInviteText, res: HelpInviteText}, - 'photos.getUserPhotos': {req: PhotosGetUserPhotos, res: PhotosPhotos}, 'messages.getDhConfig': {req: MessagesGetDhConfig, res: MessagesDhConfig}, 'messages.requestEncryption': {req: MessagesRequestEncryption, res: EncryptedChat}, 'messages.acceptEncryption': {req: MessagesAcceptEncryption, res: EncryptedChat}, @@ -12166,38 +12400,12 @@ export interface MethodDeclMap { 'messages.sendEncrypted': {req: MessagesSendEncrypted, res: MessagesSentEncryptedMessage}, 'messages.sendEncryptedFile': {req: MessagesSendEncryptedFile, res: MessagesSentEncryptedMessage}, 'messages.sendEncryptedService': {req: MessagesSendEncryptedService, res: MessagesSentEncryptedMessage}, - 'messages.receivedQueue': {req: MessagesReceivedQueue, res: Array}, + 'messages.receivedQueue': {req: MessagesReceivedQueue, res: Array}, 'messages.reportEncryptedSpam': {req: MessagesReportEncryptedSpam, res: boolean}, - 'upload.saveBigFilePart': {req: UploadSaveBigFilePart, res: boolean}, - 'initConnection': {req: InitConnection, res: any}, - 'help.getSupport': {req: HelpGetSupport, res: HelpSupport}, 'messages.readMessageContents': {req: MessagesReadMessageContents, res: MessagesAffectedMessages}, - 'account.checkUsername': {req: AccountCheckUsername, res: boolean}, - 'account.updateUsername': {req: AccountUpdateUsername, res: User}, - 'contacts.search': {req: ContactsSearch, res: ContactsFound}, - 'account.getPrivacy': {req: AccountGetPrivacy, res: AccountPrivacyRules}, - 'account.setPrivacy': {req: AccountSetPrivacy, res: AccountPrivacyRules}, - 'account.deleteAccount': {req: AccountDeleteAccount, res: boolean}, - 'account.getAccountTTL': {req: AccountGetAccountTTL, res: AccountDaysTTL}, - 'account.setAccountTTL': {req: AccountSetAccountTTL, res: boolean}, - 'invokeWithLayer': {req: InvokeWithLayer, res: any}, - 'contacts.resolveUsername': {req: ContactsResolveUsername, res: ContactsResolvedPeer}, - 'account.sendChangePhoneCode': {req: AccountSendChangePhoneCode, res: AuthSentCode}, - 'account.changePhone': {req: AccountChangePhone, res: User}, 'messages.getStickers': {req: MessagesGetStickers, res: MessagesStickers}, 'messages.getAllStickers': {req: MessagesGetAllStickers, res: MessagesAllStickers}, - 'account.updateDeviceLocked': {req: AccountUpdateDeviceLocked, res: boolean}, - 'auth.importBotAuthorization': {req: AuthImportBotAuthorization, res: AuthAuthorization}, 'messages.getWebPagePreview': {req: MessagesGetWebPagePreview, res: MessageMedia}, - 'account.getAuthorizations': {req: AccountGetAuthorizations, res: AccountAuthorizations}, - 'account.resetAuthorization': {req: AccountResetAuthorization, res: boolean}, - 'account.getPassword': {req: AccountGetPassword, res: AccountPassword}, - 'account.getPasswordSettings': {req: AccountGetPasswordSettings, res: AccountPasswordSettings}, - 'account.updatePasswordSettings': {req: AccountUpdatePasswordSettings, res: boolean}, - 'auth.checkPassword': {req: AuthCheckPassword, res: AuthAuthorization}, - 'auth.requestPasswordRecovery': {req: AuthRequestPasswordRecovery, res: AuthPasswordRecovery}, - 'auth.recoverPassword': {req: AuthRecoverPassword, res: AuthAuthorization}, - 'invokeWithoutUpdates': {req: InvokeWithoutUpdates, res: any}, 'messages.exportChatInvite': {req: MessagesExportChatInvite, res: ExportedChatInvite}, 'messages.checkChatInvite': {req: MessagesCheckChatInvite, res: ChatInvite}, 'messages.importChatInvite': {req: MessagesImportChatInvite, res: Updates}, @@ -12205,8 +12413,143 @@ export interface MethodDeclMap { 'messages.installStickerSet': {req: MessagesInstallStickerSet, res: MessagesStickerSetInstallResult}, 'messages.uninstallStickerSet': {req: MessagesUninstallStickerSet, res: boolean}, 'messages.startBot': {req: MessagesStartBot, res: Updates}, - 'help.getAppChangelog': {req: HelpGetAppChangelog, res: Updates}, 'messages.getMessagesViews': {req: MessagesGetMessagesViews, res: MessagesMessageViews}, + 'messages.editChatAdmin': {req: MessagesEditChatAdmin, res: boolean}, + 'messages.migrateChat': {req: MessagesMigrateChat, res: Updates}, + 'messages.searchGlobal': {req: MessagesSearchGlobal, res: MessagesMessages}, + 'messages.reorderStickerSets': {req: MessagesReorderStickerSets, res: boolean}, + 'messages.getDocumentByHash': {req: MessagesGetDocumentByHash, res: Document}, + 'messages.getSavedGifs': {req: MessagesGetSavedGifs, res: MessagesSavedGifs}, + 'messages.saveGif': {req: MessagesSaveGif, res: boolean}, + 'messages.getInlineBotResults': {req: MessagesGetInlineBotResults, res: MessagesBotResults}, + 'messages.setInlineBotResults': {req: MessagesSetInlineBotResults, res: boolean}, + 'messages.sendInlineBotResult': {req: MessagesSendInlineBotResult, res: Updates}, + 'messages.getMessageEditData': {req: MessagesGetMessageEditData, res: MessagesMessageEditData}, + 'messages.editMessage': {req: MessagesEditMessage, res: Updates}, + 'messages.editInlineBotMessage': {req: MessagesEditInlineBotMessage, res: boolean}, + 'messages.getBotCallbackAnswer': {req: MessagesGetBotCallbackAnswer, res: MessagesBotCallbackAnswer}, + 'messages.setBotCallbackAnswer': {req: MessagesSetBotCallbackAnswer, res: boolean}, + 'messages.getPeerDialogs': {req: MessagesGetPeerDialogs, res: MessagesPeerDialogs}, + 'messages.saveDraft': {req: MessagesSaveDraft, res: boolean}, + 'messages.getAllDrafts': {req: MessagesGetAllDrafts, res: Updates}, + 'messages.getFeaturedStickers': {req: MessagesGetFeaturedStickers, res: MessagesFeaturedStickers}, + 'messages.readFeaturedStickers': {req: MessagesReadFeaturedStickers, res: boolean}, + 'messages.getRecentStickers': {req: MessagesGetRecentStickers, res: MessagesRecentStickers}, + 'messages.saveRecentSticker': {req: MessagesSaveRecentSticker, res: boolean}, + 'messages.clearRecentStickers': {req: MessagesClearRecentStickers, res: boolean}, + 'messages.getArchivedStickers': {req: MessagesGetArchivedStickers, res: MessagesArchivedStickers}, + 'messages.getMaskStickers': {req: MessagesGetMaskStickers, res: MessagesAllStickers}, + 'messages.getAttachedStickers': {req: MessagesGetAttachedStickers, res: Array}, + 'messages.setGameScore': {req: MessagesSetGameScore, res: Updates}, + 'messages.setInlineGameScore': {req: MessagesSetInlineGameScore, res: boolean}, + 'messages.getGameHighScores': {req: MessagesGetGameHighScores, res: MessagesHighScores}, + 'messages.getInlineGameHighScores': {req: MessagesGetInlineGameHighScores, res: MessagesHighScores}, + 'messages.getCommonChats': {req: MessagesGetCommonChats, res: MessagesChats}, + 'messages.getAllChats': {req: MessagesGetAllChats, res: MessagesChats}, + 'messages.getWebPage': {req: MessagesGetWebPage, res: WebPage}, + 'messages.toggleDialogPin': {req: MessagesToggleDialogPin, res: boolean}, + 'messages.reorderPinnedDialogs': {req: MessagesReorderPinnedDialogs, res: boolean}, + 'messages.getPinnedDialogs': {req: MessagesGetPinnedDialogs, res: MessagesPeerDialogs}, + 'messages.setBotShippingResults': {req: MessagesSetBotShippingResults, res: boolean}, + 'messages.setBotPrecheckoutResults': {req: MessagesSetBotPrecheckoutResults, res: boolean}, + 'messages.uploadMedia': {req: MessagesUploadMedia, res: MessageMedia}, + 'messages.sendScreenshotNotification': {req: MessagesSendScreenshotNotification, res: Updates}, + 'messages.getFavedStickers': {req: MessagesGetFavedStickers, res: MessagesFavedStickers}, + 'messages.faveSticker': {req: MessagesFaveSticker, res: boolean}, + 'messages.getUnreadMentions': {req: MessagesGetUnreadMentions, res: MessagesMessages}, + 'messages.readMentions': {req: MessagesReadMentions, res: MessagesAffectedHistory}, + 'messages.getRecentLocations': {req: MessagesGetRecentLocations, res: MessagesMessages}, + 'messages.sendMultiMedia': {req: MessagesSendMultiMedia, res: Updates}, + 'messages.uploadEncryptedFile': {req: MessagesUploadEncryptedFile, res: EncryptedFile}, + 'messages.searchStickerSets': {req: MessagesSearchStickerSets, res: MessagesFoundStickerSets}, + 'messages.getSplitRanges': {req: MessagesGetSplitRanges, res: Array}, + 'messages.markDialogUnread': {req: MessagesMarkDialogUnread, res: boolean}, + 'messages.getDialogUnreadMarks': {req: MessagesGetDialogUnreadMarks, res: Array}, + 'messages.clearAllDrafts': {req: MessagesClearAllDrafts, res: boolean}, + 'messages.updatePinnedMessage': {req: MessagesUpdatePinnedMessage, res: Updates}, + 'messages.sendVote': {req: MessagesSendVote, res: Updates}, + 'messages.getPollResults': {req: MessagesGetPollResults, res: Updates}, + 'messages.getOnlines': {req: MessagesGetOnlines, res: ChatOnlines}, + 'messages.getStatsURL': {req: MessagesGetStatsURL, res: StatsURL}, + 'messages.editChatAbout': {req: MessagesEditChatAbout, res: boolean}, + 'messages.editChatDefaultBannedRights': {req: MessagesEditChatDefaultBannedRights, res: Updates}, + 'messages.getEmojiKeywords': {req: MessagesGetEmojiKeywords, res: EmojiKeywordsDifference}, + 'messages.getEmojiKeywordsDifference': {req: MessagesGetEmojiKeywordsDifference, res: EmojiKeywordsDifference}, + 'messages.getEmojiKeywordsLanguages': {req: MessagesGetEmojiKeywordsLanguages, res: Array}, + 'messages.getEmojiURL': {req: MessagesGetEmojiURL, res: EmojiURL}, + 'messages.getSearchCounters': {req: MessagesGetSearchCounters, res: Array}, + 'messages.requestUrlAuth': {req: MessagesRequestUrlAuth, res: UrlAuthResult}, + 'messages.acceptUrlAuth': {req: MessagesAcceptUrlAuth, res: UrlAuthResult}, + 'messages.hidePeerSettingsBar': {req: MessagesHidePeerSettingsBar, res: boolean}, + 'messages.getScheduledHistory': {req: MessagesGetScheduledHistory, res: MessagesMessages}, + 'messages.getScheduledMessages': {req: MessagesGetScheduledMessages, res: MessagesMessages}, + 'messages.sendScheduledMessages': {req: MessagesSendScheduledMessages, res: Updates}, + 'messages.deleteScheduledMessages': {req: MessagesDeleteScheduledMessages, res: Updates}, + 'messages.getPollVotes': {req: MessagesGetPollVotes, res: MessagesVotesList}, + 'messages.toggleStickerSets': {req: MessagesToggleStickerSets, res: boolean}, + 'messages.getDialogFilters': {req: MessagesGetDialogFilters, res: Array}, + 'messages.getSuggestedDialogFilters': {req: MessagesGetSuggestedDialogFilters, res: Array}, + 'messages.updateDialogFilter': {req: MessagesUpdateDialogFilter, res: boolean}, + 'messages.updateDialogFiltersOrder': {req: MessagesUpdateDialogFiltersOrder, res: boolean}, + 'messages.getOldFeaturedStickers': {req: MessagesGetOldFeaturedStickers, res: MessagesFeaturedStickers}, + 'messages.getReplies': {req: MessagesGetReplies, res: MessagesMessages}, + 'messages.getDiscussionMessage': {req: MessagesGetDiscussionMessage, res: MessagesDiscussionMessage}, + 'messages.readDiscussion': {req: MessagesReadDiscussion, res: boolean}, + 'messages.unpinAllMessages': {req: MessagesUnpinAllMessages, res: MessagesAffectedHistory}, + 'messages.deleteChat': {req: MessagesDeleteChat, res: boolean}, + 'messages.deletePhoneCallHistory': {req: MessagesDeletePhoneCallHistory, res: MessagesAffectedFoundMessages}, + 'messages.checkHistoryImport': {req: MessagesCheckHistoryImport, res: MessagesHistoryImportParsed}, + 'messages.initHistoryImport': {req: MessagesInitHistoryImport, res: MessagesHistoryImport}, + 'messages.uploadImportedMedia': {req: MessagesUploadImportedMedia, res: MessageMedia}, + 'messages.startHistoryImport': {req: MessagesStartHistoryImport, res: boolean}, + 'messages.getExportedChatInvites': {req: MessagesGetExportedChatInvites, res: MessagesExportedChatInvites}, + 'messages.getExportedChatInvite': {req: MessagesGetExportedChatInvite, res: MessagesExportedChatInvite}, + 'messages.editExportedChatInvite': {req: MessagesEditExportedChatInvite, res: MessagesExportedChatInvite}, + 'messages.deleteRevokedExportedChatInvites': {req: MessagesDeleteRevokedExportedChatInvites, res: boolean}, + 'messages.deleteExportedChatInvite': {req: MessagesDeleteExportedChatInvite, res: boolean}, + 'messages.getAdminsWithInvites': {req: MessagesGetAdminsWithInvites, res: MessagesChatAdminsWithInvites}, + 'messages.getChatInviteImporters': {req: MessagesGetChatInviteImporters, res: MessagesChatInviteImporters}, + 'messages.setHistoryTTL': {req: MessagesSetHistoryTTL, res: Updates}, + 'messages.checkHistoryImportPeer': {req: MessagesCheckHistoryImportPeer, res: MessagesCheckedHistoryImportPeer}, + 'messages.setChatTheme': {req: MessagesSetChatTheme, res: Updates}, + 'messages.getMessageReadParticipants': {req: MessagesGetMessageReadParticipants, res: Array}, + 'updates.getState': {req: UpdatesGetState, res: UpdatesState}, + 'updates.getDifference': {req: UpdatesGetDifference, res: UpdatesDifference}, + 'updates.getChannelDifference': {req: UpdatesGetChannelDifference, res: UpdatesChannelDifference}, + 'photos.updateProfilePhoto': {req: PhotosUpdateProfilePhoto, res: PhotosPhoto}, + 'photos.uploadProfilePhoto': {req: PhotosUploadProfilePhoto, res: PhotosPhoto}, + 'photos.deletePhotos': {req: PhotosDeletePhotos, res: Array}, + 'photos.getUserPhotos': {req: PhotosGetUserPhotos, res: PhotosPhotos}, + 'upload.saveFilePart': {req: UploadSaveFilePart, res: boolean}, + 'upload.getFile': {req: UploadGetFile, res: UploadFile}, + 'upload.saveBigFilePart': {req: UploadSaveBigFilePart, res: boolean}, + 'upload.getWebFile': {req: UploadGetWebFile, res: UploadWebFile}, + 'upload.getCdnFile': {req: UploadGetCdnFile, res: UploadCdnFile}, + 'upload.reuploadCdnFile': {req: UploadReuploadCdnFile, res: Array}, + 'upload.getCdnFileHashes': {req: UploadGetCdnFileHashes, res: Array}, + 'upload.getFileHashes': {req: UploadGetFileHashes, res: Array}, + 'help.getConfig': {req: HelpGetConfig, res: Config}, + 'help.getNearestDc': {req: HelpGetNearestDc, res: NearestDc}, + 'help.getAppUpdate': {req: HelpGetAppUpdate, res: HelpAppUpdate}, + 'help.getInviteText': {req: HelpGetInviteText, res: HelpInviteText}, + 'help.getSupport': {req: HelpGetSupport, res: HelpSupport}, + 'help.getAppChangelog': {req: HelpGetAppChangelog, res: Updates}, + 'help.setBotUpdatesStatus': {req: HelpSetBotUpdatesStatus, res: boolean}, + 'help.getCdnConfig': {req: HelpGetCdnConfig, res: CdnConfig}, + 'help.getRecentMeUrls': {req: HelpGetRecentMeUrls, res: HelpRecentMeUrls}, + 'help.getTermsOfServiceUpdate': {req: HelpGetTermsOfServiceUpdate, res: HelpTermsOfServiceUpdate}, + 'help.acceptTermsOfService': {req: HelpAcceptTermsOfService, res: boolean}, + 'help.getDeepLinkInfo': {req: HelpGetDeepLinkInfo, res: HelpDeepLinkInfo}, + 'help.getAppConfig': {req: HelpGetAppConfig, res: JSONValue}, + 'help.saveAppLog': {req: HelpSaveAppLog, res: boolean}, + 'help.getPassportConfig': {req: HelpGetPassportConfig, res: HelpPassportConfig}, + 'help.getSupportName': {req: HelpGetSupportName, res: HelpSupportName}, + 'help.getUserInfo': {req: HelpGetUserInfo, res: HelpUserInfo}, + 'help.editUserInfo': {req: HelpEditUserInfo, res: HelpUserInfo}, + 'help.getPromoData': {req: HelpGetPromoData, res: HelpPromoData}, + 'help.hidePromoData': {req: HelpHidePromoData, res: boolean}, + 'help.dismissSuggestion': {req: HelpDismissSuggestion, res: boolean}, + 'help.getCountriesList': {req: HelpGetCountriesList, res: HelpCountriesList}, 'channels.readHistory': {req: ChannelsReadHistory, res: boolean}, 'channels.deleteMessages': {req: ChannelsDeleteMessages, res: MessagesAffectedMessages}, 'channels.deleteUserHistory': {req: ChannelsDeleteUserHistory, res: MessagesAffectedHistory}, @@ -12226,71 +12569,44 @@ export interface MethodDeclMap { 'channels.leaveChannel': {req: ChannelsLeaveChannel, res: Updates}, 'channels.inviteToChannel': {req: ChannelsInviteToChannel, res: Updates}, 'channels.deleteChannel': {req: ChannelsDeleteChannel, res: Updates}, - 'updates.getChannelDifference': {req: UpdatesGetChannelDifference, res: UpdatesChannelDifference}, - 'messages.editChatAdmin': {req: MessagesEditChatAdmin, res: boolean}, - 'messages.migrateChat': {req: MessagesMigrateChat, res: Updates}, - 'messages.searchGlobal': {req: MessagesSearchGlobal, res: MessagesMessages}, - 'messages.reorderStickerSets': {req: MessagesReorderStickerSets, res: boolean}, - 'messages.getDocumentByHash': {req: MessagesGetDocumentByHash, res: Document}, - 'messages.getSavedGifs': {req: MessagesGetSavedGifs, res: MessagesSavedGifs}, - 'messages.saveGif': {req: MessagesSaveGif, res: boolean}, - 'messages.getInlineBotResults': {req: MessagesGetInlineBotResults, res: MessagesBotResults}, - 'messages.setInlineBotResults': {req: MessagesSetInlineBotResults, res: boolean}, - 'messages.sendInlineBotResult': {req: MessagesSendInlineBotResult, res: Updates}, 'channels.exportMessageLink': {req: ChannelsExportMessageLink, res: ExportedMessageLink}, 'channels.toggleSignatures': {req: ChannelsToggleSignatures, res: Updates}, - 'auth.resendCode': {req: AuthResendCode, res: AuthSentCode}, - 'auth.cancelCode': {req: AuthCancelCode, res: boolean}, - 'messages.getMessageEditData': {req: MessagesGetMessageEditData, res: MessagesMessageEditData}, - 'messages.editMessage': {req: MessagesEditMessage, res: Updates}, - 'messages.editInlineBotMessage': {req: MessagesEditInlineBotMessage, res: boolean}, - 'messages.getBotCallbackAnswer': {req: MessagesGetBotCallbackAnswer, res: MessagesBotCallbackAnswer}, - 'messages.setBotCallbackAnswer': {req: MessagesSetBotCallbackAnswer, res: boolean}, - 'contacts.getTopPeers': {req: ContactsGetTopPeers, res: ContactsTopPeers}, - 'contacts.resetTopPeerRating': {req: ContactsResetTopPeerRating, res: boolean}, - 'messages.getPeerDialogs': {req: MessagesGetPeerDialogs, res: MessagesPeerDialogs}, - 'messages.saveDraft': {req: MessagesSaveDraft, res: boolean}, - 'messages.getAllDrafts': {req: MessagesGetAllDrafts, res: Updates}, - 'messages.getFeaturedStickers': {req: MessagesGetFeaturedStickers, res: MessagesFeaturedStickers}, - 'messages.readFeaturedStickers': {req: MessagesReadFeaturedStickers, res: boolean}, - 'messages.getRecentStickers': {req: MessagesGetRecentStickers, res: MessagesRecentStickers}, - 'messages.saveRecentSticker': {req: MessagesSaveRecentSticker, res: boolean}, - 'messages.clearRecentStickers': {req: MessagesClearRecentStickers, res: boolean}, - 'messages.getArchivedStickers': {req: MessagesGetArchivedStickers, res: MessagesArchivedStickers}, - 'account.sendConfirmPhoneCode': {req: AccountSendConfirmPhoneCode, res: AuthSentCode}, - 'account.confirmPhone': {req: AccountConfirmPhone, res: boolean}, 'channels.getAdminedPublicChannels': {req: ChannelsGetAdminedPublicChannels, res: MessagesChats}, - 'messages.getMaskStickers': {req: MessagesGetMaskStickers, res: MessagesAllStickers}, - 'messages.getAttachedStickers': {req: MessagesGetAttachedStickers, res: Array}, - 'auth.dropTempAuthKeys': {req: AuthDropTempAuthKeys, res: boolean}, - 'messages.setGameScore': {req: MessagesSetGameScore, res: Updates}, - 'messages.setInlineGameScore': {req: MessagesSetInlineGameScore, res: boolean}, - 'messages.getGameHighScores': {req: MessagesGetGameHighScores, res: MessagesHighScores}, - 'messages.getInlineGameHighScores': {req: MessagesGetInlineGameHighScores, res: MessagesHighScores}, - 'messages.getCommonChats': {req: MessagesGetCommonChats, res: MessagesChats}, - 'messages.getAllChats': {req: MessagesGetAllChats, res: MessagesChats}, - 'help.setBotUpdatesStatus': {req: HelpSetBotUpdatesStatus, res: boolean}, - 'messages.getWebPage': {req: MessagesGetWebPage, res: WebPage}, - 'messages.toggleDialogPin': {req: MessagesToggleDialogPin, res: boolean}, - 'messages.reorderPinnedDialogs': {req: MessagesReorderPinnedDialogs, res: boolean}, - 'messages.getPinnedDialogs': {req: MessagesGetPinnedDialogs, res: MessagesPeerDialogs}, + 'channels.editBanned': {req: ChannelsEditBanned, res: Updates}, + 'channels.getAdminLog': {req: ChannelsGetAdminLog, res: ChannelsAdminLogResults}, + 'channels.setStickers': {req: ChannelsSetStickers, res: boolean}, + 'channels.readMessageContents': {req: ChannelsReadMessageContents, res: boolean}, + 'channels.deleteHistory': {req: ChannelsDeleteHistory, res: boolean}, + 'channels.togglePreHistoryHidden': {req: ChannelsTogglePreHistoryHidden, res: Updates}, + 'channels.getLeftChannels': {req: ChannelsGetLeftChannels, res: MessagesChats}, + 'channels.getGroupsForDiscussion': {req: ChannelsGetGroupsForDiscussion, res: MessagesChats}, + 'channels.setDiscussionGroup': {req: ChannelsSetDiscussionGroup, res: boolean}, + 'channels.editCreator': {req: ChannelsEditCreator, res: Updates}, + 'channels.editLocation': {req: ChannelsEditLocation, res: boolean}, + 'channels.toggleSlowMode': {req: ChannelsToggleSlowMode, res: Updates}, + 'channels.getInactiveChannels': {req: ChannelsGetInactiveChannels, res: MessagesInactiveChats}, + 'channels.convertToGigagroup': {req: ChannelsConvertToGigagroup, res: Updates}, + 'channels.viewSponsoredMessage': {req: ChannelsViewSponsoredMessage, res: boolean}, + 'channels.getSponsoredMessages': {req: ChannelsGetSponsoredMessages, res: MessagesSponsoredMessages}, 'bots.sendCustomRequest': {req: BotsSendCustomRequest, res: DataJSON}, 'bots.answerWebhookJSONQuery': {req: BotsAnswerWebhookJSONQuery, res: boolean}, - 'upload.getWebFile': {req: UploadGetWebFile, res: UploadWebFile}, + 'bots.setBotCommands': {req: BotsSetBotCommands, res: boolean}, + 'bots.resetBotCommands': {req: BotsResetBotCommands, res: boolean}, + 'bots.getBotCommands': {req: BotsGetBotCommands, res: Array}, 'payments.getPaymentForm': {req: PaymentsGetPaymentForm, res: PaymentsPaymentForm}, 'payments.getPaymentReceipt': {req: PaymentsGetPaymentReceipt, res: PaymentsPaymentReceipt}, 'payments.validateRequestedInfo': {req: PaymentsValidateRequestedInfo, res: PaymentsValidatedRequestedInfo}, 'payments.sendPaymentForm': {req: PaymentsSendPaymentForm, res: PaymentsPaymentResult}, - 'account.getTmpPassword': {req: AccountGetTmpPassword, res: AccountTmpPassword}, 'payments.getSavedInfo': {req: PaymentsGetSavedInfo, res: PaymentsSavedInfo}, 'payments.clearSavedInfo': {req: PaymentsClearSavedInfo, res: boolean}, - 'messages.setBotShippingResults': {req: MessagesSetBotShippingResults, res: boolean}, - 'messages.setBotPrecheckoutResults': {req: MessagesSetBotPrecheckoutResults, res: boolean}, + 'payments.getBankCardData': {req: PaymentsGetBankCardData, res: PaymentsBankCardData}, 'stickers.createStickerSet': {req: StickersCreateStickerSet, res: MessagesStickerSet}, 'stickers.removeStickerFromSet': {req: StickersRemoveStickerFromSet, res: MessagesStickerSet}, 'stickers.changeStickerPosition': {req: StickersChangeStickerPosition, res: MessagesStickerSet}, 'stickers.addStickerToSet': {req: StickersAddStickerToSet, res: MessagesStickerSet}, - 'messages.uploadMedia': {req: MessagesUploadMedia, res: MessageMedia}, + 'stickers.setStickerSetThumb': {req: StickersSetStickerSetThumb, res: MessagesStickerSet}, + 'stickers.checkShortName': {req: StickersCheckShortName, res: boolean}, + 'stickers.suggestShortName': {req: StickersSuggestShortName, res: StickersSuggestedShortName}, 'phone.getCallConfig': {req: PhoneGetCallConfig, res: DataJSON}, 'phone.requestCall': {req: PhoneRequestCall, res: PhonePhoneCall}, 'phone.acceptCall': {req: PhoneAcceptCall, res: PhonePhoneCall}, @@ -12299,150 +12615,7 @@ export interface MethodDeclMap { 'phone.discardCall': {req: PhoneDiscardCall, res: Updates}, 'phone.setCallRating': {req: PhoneSetCallRating, res: Updates}, 'phone.saveCallDebug': {req: PhoneSaveCallDebug, res: boolean}, - 'upload.getCdnFile': {req: UploadGetCdnFile, res: UploadCdnFile}, - 'upload.reuploadCdnFile': {req: UploadReuploadCdnFile, res: Array}, - 'help.getCdnConfig': {req: HelpGetCdnConfig, res: CdnConfig}, - 'langpack.getLangPack': {req: LangpackGetLangPack, res: LangPackDifference}, - 'langpack.getStrings': {req: LangpackGetStrings, res: Array}, - 'langpack.getDifference': {req: LangpackGetDifference, res: LangPackDifference}, - 'langpack.getLanguages': {req: LangpackGetLanguages, res: Array}, - 'channels.editBanned': {req: ChannelsEditBanned, res: Updates}, - 'channels.getAdminLog': {req: ChannelsGetAdminLog, res: ChannelsAdminLogResults}, - 'upload.getCdnFileHashes': {req: UploadGetCdnFileHashes, res: Array}, - 'messages.sendScreenshotNotification': {req: MessagesSendScreenshotNotification, res: Updates}, - 'channels.setStickers': {req: ChannelsSetStickers, res: boolean}, - 'messages.getFavedStickers': {req: MessagesGetFavedStickers, res: MessagesFavedStickers}, - 'messages.faveSticker': {req: MessagesFaveSticker, res: boolean}, - 'channels.readMessageContents': {req: ChannelsReadMessageContents, res: boolean}, - 'contacts.resetSaved': {req: ContactsResetSaved, res: boolean}, - 'messages.getUnreadMentions': {req: MessagesGetUnreadMentions, res: MessagesMessages}, - 'channels.deleteHistory': {req: ChannelsDeleteHistory, res: boolean}, - 'help.getRecentMeUrls': {req: HelpGetRecentMeUrls, res: HelpRecentMeUrls}, - 'channels.togglePreHistoryHidden': {req: ChannelsTogglePreHistoryHidden, res: Updates}, - 'messages.readMentions': {req: MessagesReadMentions, res: MessagesAffectedHistory}, - 'messages.getRecentLocations': {req: MessagesGetRecentLocations, res: MessagesMessages}, - 'messages.sendMultiMedia': {req: MessagesSendMultiMedia, res: Updates}, - 'messages.uploadEncryptedFile': {req: MessagesUploadEncryptedFile, res: EncryptedFile}, - 'account.getWebAuthorizations': {req: AccountGetWebAuthorizations, res: AccountWebAuthorizations}, - 'account.resetWebAuthorization': {req: AccountResetWebAuthorization, res: boolean}, - 'account.resetWebAuthorizations': {req: AccountResetWebAuthorizations, res: boolean}, - 'messages.searchStickerSets': {req: MessagesSearchStickerSets, res: MessagesFoundStickerSets}, - 'upload.getFileHashes': {req: UploadGetFileHashes, res: Array}, - 'help.getTermsOfServiceUpdate': {req: HelpGetTermsOfServiceUpdate, res: HelpTermsOfServiceUpdate}, - 'help.acceptTermsOfService': {req: HelpAcceptTermsOfService, res: boolean}, - 'account.getAllSecureValues': {req: AccountGetAllSecureValues, res: Array}, - 'account.getSecureValue': {req: AccountGetSecureValue, res: Array}, - 'account.saveSecureValue': {req: AccountSaveSecureValue, res: SecureValue}, - 'account.deleteSecureValue': {req: AccountDeleteSecureValue, res: boolean}, - 'users.setSecureValueErrors': {req: UsersSetSecureValueErrors, res: boolean}, - 'account.getAuthorizationForm': {req: AccountGetAuthorizationForm, res: AccountAuthorizationForm}, - 'account.acceptAuthorization': {req: AccountAcceptAuthorization, res: boolean}, - 'account.sendVerifyPhoneCode': {req: AccountSendVerifyPhoneCode, res: AuthSentCode}, - 'account.verifyPhone': {req: AccountVerifyPhone, res: boolean}, - 'account.sendVerifyEmailCode': {req: AccountSendVerifyEmailCode, res: AccountSentEmailCode}, - 'account.verifyEmail': {req: AccountVerifyEmail, res: boolean}, - 'help.getDeepLinkInfo': {req: HelpGetDeepLinkInfo, res: HelpDeepLinkInfo}, - 'contacts.getSaved': {req: ContactsGetSaved, res: Array}, - 'channels.getLeftChannels': {req: ChannelsGetLeftChannels, res: MessagesChats}, - 'account.initTakeoutSession': {req: AccountInitTakeoutSession, res: AccountTakeout}, - 'account.finishTakeoutSession': {req: AccountFinishTakeoutSession, res: boolean}, - 'messages.getSplitRanges': {req: MessagesGetSplitRanges, res: Array}, - 'invokeWithMessagesRange': {req: InvokeWithMessagesRange, res: any}, - 'invokeWithTakeout': {req: InvokeWithTakeout, res: any}, - 'messages.markDialogUnread': {req: MessagesMarkDialogUnread, res: boolean}, - 'messages.getDialogUnreadMarks': {req: MessagesGetDialogUnreadMarks, res: Array}, - 'contacts.toggleTopPeers': {req: ContactsToggleTopPeers, res: boolean}, - 'messages.clearAllDrafts': {req: MessagesClearAllDrafts, res: boolean}, - 'help.getAppConfig': {req: HelpGetAppConfig, res: JSONValue}, - 'help.saveAppLog': {req: HelpSaveAppLog, res: boolean}, - 'help.getPassportConfig': {req: HelpGetPassportConfig, res: HelpPassportConfig}, - 'langpack.getLanguage': {req: LangpackGetLanguage, res: LangPackLanguage}, - 'messages.updatePinnedMessage': {req: MessagesUpdatePinnedMessage, res: Updates}, - 'account.confirmPasswordEmail': {req: AccountConfirmPasswordEmail, res: boolean}, - 'account.resendPasswordEmail': {req: AccountResendPasswordEmail, res: boolean}, - 'account.cancelPasswordEmail': {req: AccountCancelPasswordEmail, res: boolean}, - 'help.getSupportName': {req: HelpGetSupportName, res: HelpSupportName}, - 'help.getUserInfo': {req: HelpGetUserInfo, res: HelpUserInfo}, - 'help.editUserInfo': {req: HelpEditUserInfo, res: HelpUserInfo}, - 'account.getContactSignUpNotification': {req: AccountGetContactSignUpNotification, res: boolean}, - 'account.setContactSignUpNotification': {req: AccountSetContactSignUpNotification, res: boolean}, - 'account.getNotifyExceptions': {req: AccountGetNotifyExceptions, res: Updates}, - 'messages.sendVote': {req: MessagesSendVote, res: Updates}, - 'messages.getPollResults': {req: MessagesGetPollResults, res: Updates}, - 'messages.getOnlines': {req: MessagesGetOnlines, res: ChatOnlines}, - 'messages.getStatsURL': {req: MessagesGetStatsURL, res: StatsURL}, - 'messages.editChatAbout': {req: MessagesEditChatAbout, res: boolean}, - 'messages.editChatDefaultBannedRights': {req: MessagesEditChatDefaultBannedRights, res: Updates}, - 'account.getWallPaper': {req: AccountGetWallPaper, res: WallPaper}, - 'account.uploadWallPaper': {req: AccountUploadWallPaper, res: WallPaper}, - 'account.saveWallPaper': {req: AccountSaveWallPaper, res: boolean}, - 'account.installWallPaper': {req: AccountInstallWallPaper, res: boolean}, - 'account.resetWallPapers': {req: AccountResetWallPapers, res: boolean}, - 'account.getAutoDownloadSettings': {req: AccountGetAutoDownloadSettings, res: AccountAutoDownloadSettings}, - 'account.saveAutoDownloadSettings': {req: AccountSaveAutoDownloadSettings, res: boolean}, - 'messages.getEmojiKeywords': {req: MessagesGetEmojiKeywords, res: EmojiKeywordsDifference}, - 'messages.getEmojiKeywordsDifference': {req: MessagesGetEmojiKeywordsDifference, res: EmojiKeywordsDifference}, - 'messages.getEmojiKeywordsLanguages': {req: MessagesGetEmojiKeywordsLanguages, res: Array}, - 'messages.getEmojiURL': {req: MessagesGetEmojiURL, res: EmojiURL}, - 'folders.editPeerFolders': {req: FoldersEditPeerFolders, res: Updates}, - 'folders.deleteFolder': {req: FoldersDeleteFolder, res: Updates}, - 'messages.getSearchCounters': {req: MessagesGetSearchCounters, res: Array}, - 'channels.getGroupsForDiscussion': {req: ChannelsGetGroupsForDiscussion, res: MessagesChats}, - 'channels.setDiscussionGroup': {req: ChannelsSetDiscussionGroup, res: boolean}, - 'messages.requestUrlAuth': {req: MessagesRequestUrlAuth, res: UrlAuthResult}, - 'messages.acceptUrlAuth': {req: MessagesAcceptUrlAuth, res: UrlAuthResult}, - 'messages.hidePeerSettingsBar': {req: MessagesHidePeerSettingsBar, res: boolean}, - 'contacts.addContact': {req: ContactsAddContact, res: Updates}, - 'contacts.acceptContact': {req: ContactsAcceptContact, res: Updates}, - 'channels.editCreator': {req: ChannelsEditCreator, res: Updates}, - 'contacts.getLocated': {req: ContactsGetLocated, res: Updates}, - 'channels.editLocation': {req: ChannelsEditLocation, res: boolean}, - 'channels.toggleSlowMode': {req: ChannelsToggleSlowMode, res: Updates}, - 'messages.getScheduledHistory': {req: MessagesGetScheduledHistory, res: MessagesMessages}, - 'messages.getScheduledMessages': {req: MessagesGetScheduledMessages, res: MessagesMessages}, - 'messages.sendScheduledMessages': {req: MessagesSendScheduledMessages, res: Updates}, - 'messages.deleteScheduledMessages': {req: MessagesDeleteScheduledMessages, res: Updates}, - 'account.uploadTheme': {req: AccountUploadTheme, res: Document}, - 'account.createTheme': {req: AccountCreateTheme, res: Theme}, - 'account.updateTheme': {req: AccountUpdateTheme, res: Theme}, - 'account.saveTheme': {req: AccountSaveTheme, res: boolean}, - 'account.installTheme': {req: AccountInstallTheme, res: boolean}, - 'account.getTheme': {req: AccountGetTheme, res: Theme}, - 'account.getThemes': {req: AccountGetThemes, res: AccountThemes}, - 'auth.exportLoginToken': {req: AuthExportLoginToken, res: AuthLoginToken}, - 'auth.importLoginToken': {req: AuthImportLoginToken, res: AuthLoginToken}, - 'auth.acceptLoginToken': {req: AuthAcceptLoginToken, res: Authorization}, - 'account.setContentSettings': {req: AccountSetContentSettings, res: boolean}, - 'account.getContentSettings': {req: AccountGetContentSettings, res: AccountContentSettings}, - 'channels.getInactiveChannels': {req: ChannelsGetInactiveChannels, res: MessagesInactiveChats}, - 'account.getMultiWallPapers': {req: AccountGetMultiWallPapers, res: Array}, - 'messages.getPollVotes': {req: MessagesGetPollVotes, res: MessagesVotesList}, - 'messages.toggleStickerSets': {req: MessagesToggleStickerSets, res: boolean}, - 'payments.getBankCardData': {req: PaymentsGetBankCardData, res: PaymentsBankCardData}, - 'messages.getDialogFilters': {req: MessagesGetDialogFilters, res: Array}, - 'messages.getSuggestedDialogFilters': {req: MessagesGetSuggestedDialogFilters, res: Array}, - 'messages.updateDialogFilter': {req: MessagesUpdateDialogFilter, res: boolean}, - 'messages.updateDialogFiltersOrder': {req: MessagesUpdateDialogFiltersOrder, res: boolean}, - 'stats.getBroadcastStats': {req: StatsGetBroadcastStats, res: StatsBroadcastStats}, - 'stats.loadAsyncGraph': {req: StatsLoadAsyncGraph, res: StatsGraph}, - 'stickers.setStickerSetThumb': {req: StickersSetStickerSetThumb, res: MessagesStickerSet}, - 'bots.setBotCommands': {req: BotsSetBotCommands, res: boolean}, - 'messages.getOldFeaturedStickers': {req: MessagesGetOldFeaturedStickers, res: MessagesFeaturedStickers}, - 'help.getPromoData': {req: HelpGetPromoData, res: HelpPromoData}, - 'help.hidePromoData': {req: HelpHidePromoData, res: boolean}, 'phone.sendSignalingData': {req: PhoneSendSignalingData, res: boolean}, - 'stats.getMegagroupStats': {req: StatsGetMegagroupStats, res: StatsMegagroupStats}, - 'account.getGlobalPrivacySettings': {req: AccountGetGlobalPrivacySettings, res: GlobalPrivacySettings}, - 'account.setGlobalPrivacySettings': {req: AccountSetGlobalPrivacySettings, res: GlobalPrivacySettings}, - 'help.dismissSuggestion': {req: HelpDismissSuggestion, res: boolean}, - 'help.getCountriesList': {req: HelpGetCountriesList, res: HelpCountriesList}, - 'messages.getReplies': {req: MessagesGetReplies, res: MessagesMessages}, - 'messages.getDiscussionMessage': {req: MessagesGetDiscussionMessage, res: MessagesDiscussionMessage}, - 'messages.readDiscussion': {req: MessagesReadDiscussion, res: boolean}, - 'contacts.blockFromReplies': {req: ContactsBlockFromReplies, res: Updates}, - 'stats.getMessagePublicForwards': {req: StatsGetMessagePublicForwards, res: MessagesMessages}, - 'stats.getMessageStats': {req: StatsGetMessageStats, res: StatsMessageStats}, - 'messages.unpinAllMessages': {req: MessagesUnpinAllMessages, res: MessagesAffectedHistory}, 'phone.createGroupCall': {req: PhoneCreateGroupCall, res: Updates}, 'phone.joinGroupCall': {req: PhoneJoinGroupCall, res: Updates}, 'phone.leaveGroupCall': {req: PhoneLeaveGroupCall, res: Updates}, @@ -12452,23 +12625,6 @@ export interface MethodDeclMap { 'phone.getGroupCall': {req: PhoneGetGroupCall, res: PhoneGroupCall}, 'phone.getGroupParticipants': {req: PhoneGetGroupParticipants, res: PhoneGroupParticipants}, 'phone.checkGroupCall': {req: PhoneCheckGroupCall, res: Array}, - 'messages.deleteChat': {req: MessagesDeleteChat, res: boolean}, - 'messages.deletePhoneCallHistory': {req: MessagesDeletePhoneCallHistory, res: MessagesAffectedFoundMessages}, - 'messages.checkHistoryImport': {req: MessagesCheckHistoryImport, res: MessagesHistoryImportParsed}, - 'messages.initHistoryImport': {req: MessagesInitHistoryImport, res: MessagesHistoryImport}, - 'messages.uploadImportedMedia': {req: MessagesUploadImportedMedia, res: MessageMedia}, - 'messages.startHistoryImport': {req: MessagesStartHistoryImport, res: boolean}, - 'messages.getExportedChatInvites': {req: MessagesGetExportedChatInvites, res: MessagesExportedChatInvites}, - 'messages.getExportedChatInvite': {req: MessagesGetExportedChatInvite, res: MessagesExportedChatInvite}, - 'messages.editExportedChatInvite': {req: MessagesEditExportedChatInvite, res: MessagesExportedChatInvite}, - 'messages.deleteRevokedExportedChatInvites': {req: MessagesDeleteRevokedExportedChatInvites, res: boolean}, - 'messages.deleteExportedChatInvite': {req: MessagesDeleteExportedChatInvite, res: boolean}, - 'messages.getAdminsWithInvites': {req: MessagesGetAdminsWithInvites, res: MessagesChatAdminsWithInvites}, - 'messages.getChatInviteImporters': {req: MessagesGetChatInviteImporters, res: MessagesChatInviteImporters}, - 'messages.setHistoryTTL': {req: MessagesSetHistoryTTL, res: Updates}, - 'account.reportProfilePhoto': {req: AccountReportProfilePhoto, res: boolean}, - 'channels.convertToGigagroup': {req: ChannelsConvertToGigagroup, res: Updates}, - 'messages.checkHistoryImportPeer': {req: MessagesCheckHistoryImportPeer, res: MessagesCheckedHistoryImportPeer}, 'phone.toggleGroupCallRecord': {req: PhoneToggleGroupCallRecord, res: Updates}, 'phone.editGroupCallParticipant': {req: PhoneEditGroupCallParticipant, res: Updates}, 'phone.editGroupCallTitle': {req: PhoneEditGroupCallTitle, res: Updates}, @@ -12479,12 +12635,17 @@ export interface MethodDeclMap { 'phone.saveDefaultGroupCallJoinAs': {req: PhoneSaveDefaultGroupCallJoinAs, res: boolean}, 'phone.joinGroupCallPresentation': {req: PhoneJoinGroupCallPresentation, res: Updates}, 'phone.leaveGroupCallPresentation': {req: PhoneLeaveGroupCallPresentation, res: Updates}, - 'stickers.checkShortName': {req: StickersCheckShortName, res: boolean}, - 'stickers.suggestShortName': {req: StickersSuggestShortName, res: StickersSuggestedShortName}, - 'bots.resetBotCommands': {req: BotsResetBotCommands, res: boolean}, - 'bots.getBotCommands': {req: BotsGetBotCommands, res: Array}, - 'account.resetPassword': {req: AccountResetPassword, res: AccountResetPasswordResult}, - 'account.declinePasswordReset': {req: AccountDeclinePasswordReset, res: boolean}, - 'auth.checkRecoveryPassword': {req: AuthCheckRecoveryPassword, res: boolean}, + 'langpack.getLangPack': {req: LangpackGetLangPack, res: LangPackDifference}, + 'langpack.getStrings': {req: LangpackGetStrings, res: Array}, + 'langpack.getDifference': {req: LangpackGetDifference, res: LangPackDifference}, + 'langpack.getLanguages': {req: LangpackGetLanguages, res: Array}, + 'langpack.getLanguage': {req: LangpackGetLanguage, res: LangPackLanguage}, + 'folders.editPeerFolders': {req: FoldersEditPeerFolders, res: Updates}, + 'folders.deleteFolder': {req: FoldersDeleteFolder, res: Updates}, + 'stats.getBroadcastStats': {req: StatsGetBroadcastStats, res: StatsBroadcastStats}, + 'stats.loadAsyncGraph': {req: StatsLoadAsyncGraph, res: StatsGraph}, + 'stats.getMegagroupStats': {req: StatsGetMegagroupStats, res: StatsMegagroupStats}, + 'stats.getMessagePublicForwards': {req: StatsGetMessagePublicForwards, res: MessagesMessages}, + 'stats.getMessageStats': {req: StatsGetMessageStats, res: StatsMessageStats}, } diff --git a/src/lib/appManagers/apiUpdatesManager.ts b/src/lib/appManagers/apiUpdatesManager.ts index c852ad12..8582d2e1 100644 --- a/src/lib/appManagers/apiUpdatesManager.ts +++ b/src/lib/appManagers/apiUpdatesManager.ts @@ -52,7 +52,7 @@ export class ApiUpdatesManager { syncLoading: null }; - private channelStates: {[channelId: number]: UpdatesState} = {}; + private channelStates: {[channelId: ChatId]: UpdatesState} = {}; private attached = false; private log = logger('UPDATES', LogTypes.Error | LogTypes.Warn | LogTypes.Log/* | LogTypes.Debug */); @@ -113,7 +113,7 @@ export class ApiUpdatesManager { return true; } - private popPendingPtsUpdate(channelId: number) { + private popPendingPtsUpdate(channelId: ChatId) { const curState = channelId ? this.getChannelState(channelId) : this.updatesState; if(!curState.pendingPtsUpdates.length) { return false; @@ -206,8 +206,8 @@ export class ApiUpdatesManager { const isOut = updateMessage.pFlags.out; const fromId = (updateMessage as Updates.updateShortChatMessage).from_id || (isOut ? rootScope.myId : (updateMessage as Updates.updateShortMessage).user_id); const toId = (updateMessage as Updates.updateShortChatMessage).chat_id - ? -(updateMessage as Updates.updateShortChatMessage).chat_id - : ((updateMessage as Updates.updateShortMessage).user_id || rootScope.myId); + ? (updateMessage as Updates.updateShortChatMessage).chat_id.toPeerId(true) + : ((updateMessage as Updates.updateShortMessage).user_id.toPeerId(false) || rootScope.myId); this.processUpdate({ _: 'updateNewMessage', @@ -215,7 +215,7 @@ export class ApiUpdatesManager { _: 'message', pFlags: updateMessage.pFlags, id: updateMessage.id, - from_id: appPeersManager.getOutputPeer(fromId), + from_id: appPeersManager.getOutputPeer(fromId.toPeerId()), peer_id: appPeersManager.getOutputPeer(toId), date: updateMessage.date, message: updateMessage.message, @@ -340,7 +340,7 @@ export class ApiUpdatesManager { return promise; } - private getChannelDifference(channelId: number): Promise { + private getChannelDifference(channelId: ChatId): Promise { const channelState = this.getChannelState(channelId); const wasSyncing = channelState.syncLoading; if(!wasSyncing) { @@ -411,7 +411,7 @@ export class ApiUpdatesManager { return promise; } - private justAName(state: UpdatesState, promise: UpdatesState['syncLoading'], channelId?: number) { + private justAName(state: UpdatesState, promise: UpdatesState['syncLoading'], channelId?: ChatId) { state.syncLoading = promise; rootScope.dispatchEvent('state_synchronizing', channelId); @@ -423,7 +423,7 @@ export class ApiUpdatesManager { }); } - public addChannelState(channelId: number, pts: number) { + public addChannelState(channelId: ChatId, pts: number) { if(!pts) { throw new Error('Add channel state without pts ' + channelId); } @@ -442,7 +442,7 @@ export class ApiUpdatesManager { return false; } - public getChannelState(channelId: number, pts?: number) { + public getChannelState(channelId: ChatId, pts?: number) { if(this.channelStates[channelId] === undefined) { this.addChannelState(channelId, pts); } @@ -456,11 +456,11 @@ export class ApiUpdatesManager { seqStart: number/* , ignoreSyncLoading: boolean */ }> = {}) { - let channelId = 0; + let channelId: ChatId; switch(update._) { case 'updateNewChannelMessage': case 'updateEditChannelMessage': - channelId = -appPeersManager.getPeerId(update.message.peer_id); + channelId = appPeersManager.getPeerId(update.message.peer_id).toChatId(); break; /* case 'updateDeleteChannelMessages': channelId = update.channel_id; @@ -507,8 +507,8 @@ export class ApiUpdatesManager { if(message.from_id && !appUsersManager.hasUser(appPeersManager.getPeerId(message.from_id), message.pFlags.post/* || channelId*/) && (reason = 'author') || fwdHeader.from_id && !appUsersManager.hasUser(appPeersManager.getPeerId(fwdHeader.from_id), !!(fwdHeader.from_id as Peer.peerChannel).channel_id) && (reason = 'fwdAuthor') || (fwdHeader.from_id as Peer.peerChannel)?.channel_id && !appChatsManager.hasChat((fwdHeader.from_id as Peer.peerChannel).channel_id, true) && (reason = 'fwdChannel') || - toPeerId > 0 && !appUsersManager.hasUser(toPeerId) && (reason = 'toPeer User') || - toPeerId < 0 && !appChatsManager.hasChat(-toPeerId) && (reason = 'toPeer Chat')) { + toPeerId.isUser() && !appUsersManager.hasUser(toPeerId) && (reason = 'toPeer User') || + toPeerId.isAnyChat() && !appChatsManager.hasChat(toPeerId.toChatId()) && (reason = 'toPeer Chat')) { this.log.warn('Not enough data for message update', toPeerId, reason, message); if(channelId && appChatsManager.hasChat(channelId)) { this.getChannelDifference(channelId); @@ -633,13 +633,11 @@ export class ApiUpdatesManager { this.attached = true; - appStateManager.getState().then(_state => { - const state = _state.updates; - + appStateManager.getState().then(({updates: state}) => { const newVersion = appStateManager.newVersion/* || '0.8.6' */; //rootScope.broadcast('state_synchronizing'); - if(!state || !state.pts || !state.date || !state.seq) { + if(!state || !state.pts || !state.date/* || !state.seq */) { // seq can be undefined because of updates.differenceTooLong this.log('will get new state'); this.updatesState.syncLoading = new Promise((resolve) => { diff --git a/src/lib/appManagers/appAvatarsManager.ts b/src/lib/appManagers/appAvatarsManager.ts index d900ee9a..6e266d17 100644 --- a/src/lib/appManagers/appAvatarsManager.ts +++ b/src/lib/appManagers/appAvatarsManager.ts @@ -8,6 +8,7 @@ import { renderImageFromUrlPromise } from "../../helpers/dom/renderImageFromUrl" import replaceContent from "../../helpers/dom/replaceContent"; import sequentialDom from "../../helpers/sequentialDom"; import { UserProfilePhoto, ChatPhoto, InputFileLocation } from "../../layer"; +import { NULL_PEER_ID, REPLIES_PEER_ID } from "../mtproto/mtproto_config"; import RichTextProcessor from "../richtextprocessor"; import rootScope from "../rootScope"; import appDownloadManager from "./appDownloadManager"; @@ -19,22 +20,22 @@ type PeerPhotoSize = 'photo_small' | 'photo_big'; export class AppAvatarsManager { private savedAvatarURLs: { - [peerId: number]: { + [peerId: PeerId]: { [size in PeerPhotoSize]?: string | Promise } } = {}; - public isAvatarCached(peerId: number) { + public isAvatarCached(peerId: PeerId) { return !!this.savedAvatarURLs[peerId]; } - public removeFromAvatarsCache(peerId: number) { + public removeFromAvatarsCache(peerId: PeerId) { if(this.savedAvatarURLs[peerId]) { delete this.savedAvatarURLs[peerId]; } } - public loadAvatar(peerId: number, photo: UserProfilePhoto.userProfilePhoto | ChatPhoto.chatPhoto, size: PeerPhotoSize) { + public loadAvatar(peerId: PeerId, photo: UserProfilePhoto.userProfilePhoto | ChatPhoto.chatPhoto, size: PeerPhotoSize) { const inputPeer = appPeersManager.getInputPeerById(peerId); let cached = false; @@ -83,7 +84,7 @@ export class AppAvatarsManager { return {cached, loadPromise: getAvatarPromise}; } - public putAvatar(div: HTMLElement, peerId: number, photo: UserProfilePhoto.userProfilePhoto | ChatPhoto.chatPhoto, size: PeerPhotoSize, img = new Image(), onlyThumb = false) { + public putAvatar(div: HTMLElement, peerId: PeerId, photo: UserProfilePhoto.userProfilePhoto | ChatPhoto.chatPhoto, size: PeerPhotoSize, img = new Image(), onlyThumb = false) { let {cached, loadPromise} = this.loadAvatar(peerId, photo, size); let renderThumbPromise: Promise; @@ -144,45 +145,44 @@ export class AppAvatarsManager { return {cached, loadPromise: renderThumbPromise || renderPromise}; } + public s(div: HTMLElement, innerHTML: string, color: string, icon: string) { + div.innerHTML = innerHTML; + div.dataset.color = color; + div.classList.remove('tgico-saved', 'tgico-deletedaccount', 'tgico-reply_filled'); + icon && div.classList.add(icon); + } + // peerId === peerId || title - public putPhoto(div: HTMLElement, peerId: number, isDialog = false, title = '', onlyThumb = false) { - const photo = appPeersManager.getPeerPhoto(peerId); - - const size: PeerPhotoSize = 'photo_small'; - const avatarAvailable = !!photo; - const avatarRendered = div.firstElementChild && !(div.firstElementChild as HTMLElement).classList.contains('emoji'); - + public putPhoto(div: HTMLElement, peerId: PeerId, isDialog = false, title = '', onlyThumb = false) { const myId = rootScope.myId; - + //console.log('loadDialogPhoto location:', location, inputPeer); if(peerId === myId && isDialog) { - div.innerText = ''; - div.dataset.color = ''; - div.classList.add('tgico-saved'); - div.classList.remove('tgico-deletedaccount'); + this.s(div, '', '', 'tgico-saved'); return; } - - if(peerId > 0) { + + if(peerId !== NULL_PEER_ID && peerId.isUser()) { const user = appUsersManager.getUser(peerId); if(user && user.pFlags && user.pFlags.deleted) { - div.innerText = ''; - div.dataset.color = appPeersManager.getPeerColorById(peerId); - div.classList.add('tgico-deletedaccount'); - div.classList.remove('tgico-saved'); + this.s(div, '', appPeersManager.getPeerColorById(peerId), 'tgico-deletedaccount'); return; } } - + + const photo = appPeersManager.getPeerPhoto(peerId); + const avatarAvailable = !!photo; + const avatarRendered = !!div.firstElementChild && !(div.firstElementChild as HTMLElement).classList.contains('emoji'); if(!avatarAvailable || !avatarRendered || !this.savedAvatarURLs[peerId]) { let color = ''; if(peerId && (peerId !== myId || !isDialog)) { color = appPeersManager.getPeerColorById(peerId); } - - div.innerText = ''; - div.classList.remove('tgico-saved', 'tgico-deletedaccount'); - div.dataset.color = color; + + if(peerId === REPLIES_PEER_ID) { + this.s(div, '', color, 'tgico-reply_filled'); + return; + } let abbr: string; if(!title) { @@ -192,11 +192,12 @@ export class AppAvatarsManager { abbr = RichTextProcessor.getAbbreviation(title); } - div.innerHTML = abbr; + this.s(div, abbr, color, ''); //return Promise.resolve(true); } if(avatarAvailable/* && false */) { + const size: PeerPhotoSize = 'photo_small'; return this.putAvatar(div, peerId, photo, size, undefined, onlyThumb); } } diff --git a/src/lib/appManagers/appChatsManager.ts b/src/lib/appManagers/appChatsManager.ts index 4cb3c0fd..e7f3aeb2 100644 --- a/src/lib/appManagers/appChatsManager.ts +++ b/src/lib/appManagers/appChatsManager.ts @@ -9,7 +9,7 @@ * https://github.com/zhukov/webogram/blob/master/LICENSE */ -import { MOUNT_CLASS_TO } from "../../config/debug"; +import DEBUG, { MOUNT_CLASS_TO } from "../../config/debug"; import { isObject, safeReplaceObject, copy, deepEqual } from "../../helpers/object"; import { ChannelParticipant, Chat, ChatAdminRights, ChatBannedRights, ChatParticipant, ChatPhoto, InputChannel, InputChatPhoto, InputFile, InputPeer, Update, Updates } from "../../layer"; import apiManagerProxy from "../mtproto/mtprotoworker"; @@ -22,13 +22,12 @@ import appStateManager from "./appStateManager"; import appUsersManager from "./appUsersManager"; export type Channel = Chat.channel; - export type ChatRights = keyof ChatBannedRights['pFlags'] | keyof ChatAdminRights['pFlags'] | 'change_type' | 'change_permissions' | 'delete_chat' | 'view_participants'; export class AppChatsManager { private storage = appStateManager.storages.chats; - private chats: {[id: number]: Chat.channel | Chat.chat | any}; + private chats: {[id: ChatId]: Chat.channel | Chat.chat | any}; //private usernames: any; //private channelAccess: any; //private megagroups: {[id: number]: true}; @@ -50,7 +49,7 @@ export class AppChatsManager { }, updateChatDefaultBannedRights: (update) => { - const chatId = -appPeersManager.getPeerId(update.peer); + const chatId = appPeersManager.getPeerId(update.peer).toChatId(); const chat: Chat.chat = this.chats[chatId]; if(chat) { chat.default_banned_rights = update.default_banned_rights; @@ -70,22 +69,22 @@ export class AppChatsManager { } } - appStateManager.addEventListener('peerNeeded', (peerId: number) => { - if(peerId > 0 || this.storage.getFromCache(-peerId)) { + appStateManager.addEventListener('peerNeeded', (peerId) => { + if(peerId.isUser() || this.storage.getFromCache(peerId.toChatId())) { return; } this.storage.set({ - [-peerId]: this.getChat(-peerId) + [peerId.toChatId()]: this.getChat(peerId.toChatId()) }); }); - appStateManager.addEventListener('peerUnneeded', (peerId: number) => { - if(peerId > 0 || !this.storage.getFromCache(-peerId)) { + appStateManager.addEventListener('peerUnneeded', (peerId) => { + if(peerId.isUser() || !this.storage.getFromCache(peerId.toChatId())) { return; } - this.storage.delete(-peerId); + this.storage.delete(peerId.toChatId()); }); }); } @@ -93,10 +92,9 @@ export class AppChatsManager { public clear(init = false) { if(!init) { const chats = appStateManager.storagesResults.chats; - for(const _chatId in this.chats) { - const chatId = +_chatId; + for(const chatId in this.chats) { if(!chatId) continue; - if(!appStateManager.isPeerNeeded(-chatId)) { + if(!appStateManager.isPeerNeeded(chatId.toPeerId(true))) { /* const chat = this.chats[chatId]; if(chat.username) { delete this.usernames[cleanUsername(chat.username)]; @@ -171,27 +169,35 @@ export class AppChatsManager { rootScope.dispatchEvent('chat_update', chat.id); } + const peerId = chat.id.toPeerId(true); if(changedPhoto) { - rootScope.dispatchEvent('avatar_update', -chat.id); + rootScope.dispatchEvent('avatar_update', peerId); } if(changedTitle) { - rootScope.dispatchEvent('peer_title_edit', -chat.id); + rootScope.dispatchEvent('peer_title_edit', peerId); } - if(appStateManager.isPeerNeeded(-chat.id)) { + if(appStateManager.isPeerNeeded(peerId)) { this.storage.set({ [chat.id]: chat }); } } - public getChat(id: number) { - if(id < 0) id = -id; + public getChat(id: ChatId) { + if(id.isAnyChat()) { + console.error('chatId should be positive'); + + if(DEBUG) { + debugger; + } + } + return this.chats[id] || {_: 'chatEmpty', id, deleted: true, access_hash: '', pFlags: {}/* this.channelAccess[id] */}; } - public combineParticipantBannedRights(id: number, rights: ChatBannedRights) { + public combineParticipantBannedRights(id: ChatId, rights: ChatBannedRights) { const chat: Chat.channel = this.getChat(id); if(chat.default_banned_rights) { @@ -207,7 +213,7 @@ export class AppChatsManager { } // * creator can still send messages to left channel. so this function shows server rights. see canSendToPeer for local rights in messages manager. - public hasRights(id: number, action: ChatRights, rights?: ChatAdminRights | ChatBannedRights, isThread?: boolean) { + public hasRights(id: ChatId, action: ChatRights, rights?: ChatAdminRights | ChatBannedRights, isThread?: boolean) { const chat: Chat = this.getChat(id); if(chat._ === 'chatEmpty') return false; @@ -297,7 +303,7 @@ export class AppChatsManager { return true; } - public editChatDefaultBannedRights(id: number, banned_rights: ChatBannedRights) { + public editChatDefaultBannedRights(id: ChatId, banned_rights: ChatBannedRights) { const chat: Chat.chat = this.getChat(id); if(chat.default_banned_rights) { if(chat.default_banned_rights.until_date === banned_rights.until_date && deepEqual(chat.default_banned_rights.pFlags, banned_rights.pFlags)) { @@ -306,7 +312,7 @@ export class AppChatsManager { } return apiManager.invokeApi('messages.editChatDefaultBannedRights', { - peer: appPeersManager.getInputPeerById(-id), + peer: appPeersManager.getInputPeerById(id.toPeerId(true)), banned_rights }).then(this.onChatUpdated.bind(this, id)); } @@ -315,20 +321,20 @@ export class AppChatsManager { return this.usernames[username] || 0; } */ - /* public saveChannelAccess(id: number, accessHash: string) { + /* public saveChannelAccess(id: ChatId, accessHash: string) { this.channelAccess[id] = accessHash; } */ - /* public saveIsMegagroup(id: number) { + /* public saveIsMegagroup(id: ChatId) { this.megagroups[id] = true; } */ - public isChannel(id: number) { + public isChannel(id: ChatId) { const chat = this.chats[id]; return chat && (chat._ === 'channel' || chat._ === 'channelForbidden')/* || this.channelAccess[id] */; } - public isMegagroup(id: number) { + public isMegagroup(id: ChatId) { /* if(this.megagroups[id]) { return true; } */ @@ -337,11 +343,11 @@ export class AppChatsManager { return chat && chat._ === 'channel' && chat.pFlags.megagroup; } - public isBroadcast(id: number) { + public isBroadcast(id: ChatId) { return this.isChannel(id) && !this.isMegagroup(id); } - public isInChat(id: number) { + public isInChat(id: ChatId) { let good = true; const chat: Chat = this.getChat(id); if(chat._ === 'channelForbidden' @@ -356,7 +362,7 @@ export class AppChatsManager { return good; } - public getChannelInput(id: number): InputChannel { + public getChannelInput(id: ChatId): InputChannel { const chat: Chat = this.getChat(id); if(chat._ === 'chatEmpty' || !(chat as Chat.channel).access_hash) { return { @@ -371,14 +377,14 @@ export class AppChatsManager { } } - public getChatInputPeer(id: number): InputPeer.inputPeerChat { + public getChatInputPeer(id: ChatId): InputPeer.inputPeerChat { return { _: 'inputPeerChat', chat_id: id }; } - public getChannelInputPeer(id: number): InputPeer.inputPeerChannel { + public getChannelInputPeer(id: ChatId): InputPeer.inputPeerChannel { return { _: 'inputPeerChannel', channel_id: id, @@ -386,12 +392,12 @@ export class AppChatsManager { }; } - public hasChat(id: number, allowMin?: true) { - const chat = this.chats[id] + public hasChat(id: ChatId, allowMin?: true) { + const chat = this.chats[id]; return isObject(chat) && (allowMin || !chat.pFlags.min); } - public getChatPhoto(id: number) { + public getChatPhoto(id: ChatId) { const chat: Chat.chat = this.getChat(id); return chat && chat.photo || { @@ -399,7 +405,7 @@ export class AppChatsManager { }; } - public getChatString(id: number) { + public getChatString(id: ChatId) { const chat = this.getChat(id); if(this.isChannel(id)) { return (this.isMegagroup(id) ? 's' : 'c') + id + '_' + chat.access_hash; @@ -459,7 +465,7 @@ export class AppChatsManager { return participants; } */ - public createChannel(title: string, about: string): Promise { + public createChannel(title: string, about: string): Promise { return apiManager.invokeApi('channels.createChannel', { broadcast: true, title, @@ -468,13 +474,13 @@ export class AppChatsManager { apiUpdatesManager.processUpdateMessage(updates); const channelId = (updates as any).chats[0].id; - rootScope.dispatchEvent('history_focus', {peerId: -channelId}); + rootScope.dispatchEvent('history_focus', {peerId: channelId.toPeerId(true)}); return channelId; }); } - public inviteToChannel(id: number, userIds: number[]) { + public inviteToChannel(id: ChatId, userIds: UserId[]) { const input = this.getChannelInput(id); const usersInputs = userIds.map(u => appUsersManager.getUserInput(u)); @@ -484,7 +490,7 @@ export class AppChatsManager { }).then(this.onChatUpdated.bind(this, id)); } - public createChat(title: string, userIds: number[]): Promise { + public createChat(title: string, userIds: UserId[]): Promise { return apiManager.invokeApi('messages.createChat', { users: userIds.map(u => appUsersManager.getUserInput(u)), title @@ -492,13 +498,13 @@ export class AppChatsManager { apiUpdatesManager.processUpdateMessage(updates); const chatId = (updates as any as Updates.updates).chats[0].id; - rootScope.dispatchEvent('history_focus', {peerId: -chatId}); + rootScope.dispatchEvent('history_focus', {peerId: chatId.toPeerId(true)}); return chatId; }); } - private onChatUpdated = (chatId: number, updates?: any) => { + private onChatUpdated = (chatId: ChatId, updates?: any) => { //console.log('onChatUpdated', chatId, updates); apiUpdatesManager.processUpdateMessage(updates); @@ -507,19 +513,19 @@ export class AppChatsManager { } }; - public leaveChannel(id: number) { + public leaveChannel(id: ChatId) { return apiManager.invokeApi('channels.leaveChannel', { channel: this.getChannelInput(id) }).then(this.onChatUpdated.bind(this, id)); } - public joinChannel(id: number) { + public joinChannel(id: ChatId) { return apiManager.invokeApi('channels.joinChannel', { channel: this.getChannelInput(id) }).then(this.onChatUpdated.bind(this, id)); } - public addChatUser(id: number, userId: number, fwdLimit = 100) { + public addChatUser(id: ChatId, userId: UserId, fwdLimit = 100) { return apiManager.invokeApi('messages.addChatUser', { chat_id: id, user_id: appUsersManager.getUserInput(userId), @@ -527,32 +533,32 @@ export class AppChatsManager { }).then(this.onChatUpdated.bind(this, id)); } - public deleteChatUser(id: number, userId: number) { + public deleteChatUser(id: ChatId, userId: UserId) { return apiManager.invokeApi('messages.deleteChatUser', { chat_id: id, user_id: appUsersManager.getUserInput(userId) }).then(this.onChatUpdated.bind(this, id)); } - public leaveChat(id: number) { + public leaveChat(id: ChatId) { return this.deleteChatUser(id, appUsersManager.getSelf().id); } - public leave(id: number) { + public leave(id: ChatId) { return this.isChannel(id) ? this.leaveChannel(id) : this.leaveChat(id); } - public delete(id: number) { + public delete(id: ChatId) { return this.isChannel(id) ? this.deleteChannel(id) : this.deleteChat(id); } - public deleteChannel(id: number) { + public deleteChannel(id: ChatId) { return apiManager.invokeApi('channels.deleteChannel', { channel: this.getChannelInput(id) }).then(this.onChatUpdated.bind(this, id)); } - public deleteChat(id: number) { + public deleteChat(id: ChatId) { //return this.leaveChat(id).then(() => { return apiManager.invokeApi('messages.deleteChat', { chat_id: id @@ -560,7 +566,7 @@ export class AppChatsManager { //}); } - public migrateChat(id: number): Promise { + public migrateChat(id: ChatId): Promise { const chat: Chat = this.getChat(id); if(chat._ === 'channel') return Promise.resolve(chat.id); return apiManager.invokeApi('messages.migrateChat', { @@ -572,7 +578,7 @@ export class AppChatsManager { }); } - public updateUsername(id: number, username: string) { + public updateUsername(id: ChatId, username: string) { return apiManager.invokeApi('channels.updateUsername', { channel: this.getChannelInput(id), username @@ -586,7 +592,7 @@ export class AppChatsManager { }); } - public editPhoto(id: number, inputFile: InputFile) { + public editPhoto(id: ChatId, inputFile: InputFile) { const inputChatPhoto: InputChatPhoto = { _: 'inputChatUploadedPhoto', file: inputFile @@ -610,7 +616,7 @@ export class AppChatsManager { }); } - public editTitle(id: number, title: string) { + public editTitle(id: ChatId, title: string) { let promise: any; if(this.isChannel(id)) { @@ -630,25 +636,26 @@ export class AppChatsManager { }); } - public editAbout(id: number, about: string) { + public editAbout(id: ChatId, about: string) { + const peerId = id.toPeerId(true); return apiManager.invokeApi('messages.editChatAbout', { - peer: appPeersManager.getInputPeerById(-id), + peer: appPeersManager.getInputPeerById(peerId), about }).then(bool => { //apiUpdatesManager.processUpdateMessage(updates); - rootScope.dispatchEvent('peer_bio_edit', -id); + rootScope.dispatchEvent('peer_bio_edit', peerId); }); } - public getParticipantPeerId(participant: ChannelParticipant | ChatParticipant) { + public getParticipantPeerId(participant: ChannelParticipant | ChatParticipant): PeerId { const peerId = (participant as ChannelParticipant.channelParticipantBanned).peer ? appPeersManager.getPeerId((participant as ChannelParticipant.channelParticipantBanned).peer) : - (participant as ChatParticipant.chatParticipant).user_id; + (participant as ChatParticipant.chatParticipant).user_id.toPeerId(); return peerId; } - public editBanned(id: number, participant: number | ChannelParticipant, banned_rights: ChatBannedRights) { - const peerId = typeof(participant) === 'number' ? participant : this.getParticipantPeerId(participant); + public editBanned(id: ChatId, participant: PeerId | ChannelParticipant, banned_rights: ChatBannedRights) { + const peerId = typeof(participant) !== 'object' ? participant : this.getParticipantPeerId(participant); return apiManager.invokeApi('channels.editBanned', { channel: this.getChannelInput(id), participant: appPeersManager.getInputPeerById(peerId), @@ -656,7 +663,7 @@ export class AppChatsManager { }).then((updates) => { this.onChatUpdated(id, updates); - if(typeof(participant) !== 'number') { + if(typeof(participant) === 'object') { const timestamp = Date.now() / 1000 | 0; apiUpdatesManager.processLocalUpdate({ _: 'updateChannelParticipant', @@ -679,7 +686,7 @@ export class AppChatsManager { }); } - public clearChannelParticipantBannedRights(id: number, participant: number | ChannelParticipant) { + public clearChannelParticipantBannedRights(id: ChatId, participant: PeerId | ChannelParticipant) { return this.editBanned(id, participant, { _: 'chatBannedRights', until_date: 0, @@ -687,7 +694,7 @@ export class AppChatsManager { }); } - public kickFromChannel(id: number, participant: number | ChannelParticipant) { + public kickFromChannel(id: ChatId, participant: PeerId | ChannelParticipant) { return this.editBanned(id, participant, { _: 'chatBannedRights', until_date: 0, @@ -697,7 +704,7 @@ export class AppChatsManager { }); } - public resolveChannel(id: number) { + public resolveChannel(id: ChatId) { return apiManager.invokeApiSingle('channels.getChannels', { id: [{ _: 'inputChannel', @@ -709,7 +716,7 @@ export class AppChatsManager { }); } - public togglePreHistoryHidden(id: number, enabled: boolean) { + public togglePreHistoryHidden(id: ChatId, enabled: boolean) { return this.migrateChat(id).then(channelId => { return apiManager.invokeApi('channels.togglePreHistoryHidden', { channel: this.getChannelInput(channelId), @@ -720,7 +727,7 @@ export class AppChatsManager { }); } - public toggleSignatures(id: number, enabled: boolean) { + public toggleSignatures(id: ChatId, enabled: boolean) { return apiManager.invokeApi('channels.toggleSignatures', { channel: this.getChannelInput(id), enabled diff --git a/src/lib/appManagers/appDialogsManager.ts b/src/lib/appManagers/appDialogsManager.ts index eaefed52..6aa55f89 100644 --- a/src/lib/appManagers/appDialogsManager.ts +++ b/src/lib/appManagers/appDialogsManager.ts @@ -55,6 +55,7 @@ import { setSendingStatus } from "../../components/sendingStatus"; import SortedList, { SortedElementBase } from "../../helpers/sortedList"; import debounce from "../../helpers/schedulers/debounce"; import generateVerifiedIcon from "../../components/generateVerifiedIcon"; +import { NULL_PEER_ID } from "../mtproto/mtproto_config"; export type DialogDom = { avatarEl: AvatarElement, @@ -152,10 +153,6 @@ export class AppDialogsManager { private showFiltersPromise: Promise; private allUnreadCount: HTMLElement; - private accumulateArchivedTimeout: number; - - //private topOffsetIndex = 0; - private sliceTimeout: number; private lastActiveElements: Set = new Set(); @@ -163,11 +160,14 @@ export class AppDialogsManager { private offsets: {top: number, bottom: number} = {top: 0, bottom: 0}; private loadContacts: () => void; - private processContact: (peerId: number) => void; + private processContact: (peerId: PeerId) => void; private indexKey: ReturnType; + private initedListeners = false; + public onListLengthChange: () => Promise; + private loadedDialogsAtLeastOnce = false; constructor() { this.chatsPreloader = putPreloader(null, true); @@ -203,9 +203,12 @@ export class AppDialogsManager { } */ if(IS_TOUCH_SUPPORTED) { - handleTabSwipe(this.folders.container, (next) => { - const prevId = selectTab.prevId(); - selectTab(next ? prevId + 1 : prevId - 1); + handleTabSwipe({ + element: this.folders.container, + onSwipe: (xDiff) => { + const prevId = selectTab.prevId(); + selectTab(xDiff > 0 ? prevId + 1 : prevId - 1); + } }); } @@ -236,11 +239,110 @@ export class AppDialogsManager { (window as any).addElement = add; } */ + rootScope.addEventListener('state_cleared', () => { + //setTimeout(() => + appStateManager.getState().then((state) => { + this.loadedDialogsAtLeastOnce = false; + + appUsersManager.clear(); + appChatsManager.clear(); + + const filtersStorage = appMessagesManager.filtersStorage; + const filters = filtersStorage.filters; + for(const filterId in filters) { // delete filters + rootScope.dispatchEvent('updateDialogFilter', { + _: 'updateDialogFilter', + id: +filterId, + }); + } + + appMessagesManager.clear(); + + /* const clearPromises: Promise[] = []; + for(const name in appStateManager.storagesResults) { + const results = appStateManager.storagesResults[name as keyof AppStateManager['storages']]; + const storage = appStateManager.storages[name as keyof AppStateManager['storages']]; + results.length = 0; + clearPromises.push(storage.clear()); + } */ + + this.sortedList.clear(); + this.onTabChange(); + this.onStateLoaded(state); + })//, 5000); + }); + + const foldersScrollable = new ScrollableX(this.folders.menuScrollContainer); + bottomPart.prepend(this.folders.menuScrollContainer); + const selectTab = horizontalMenu(this.folders.menu, this.folders.container, (id, tabContent) => { + /* if(id !== 0) { + id += 1; + } */ + + id = +tabContent.dataset.filterId || 0; + + if(this.filterId === id) return; + + this.sortedLists[id].clear(); + this.setFilterId(id); + this.onTabChange(); + }, () => { + for(const folderId in this.sortedLists) { + if(+folderId !== this.filterId) { + this.sortedLists[folderId].clear(); + } + } + }, undefined, foldersScrollable); + + //selectTab(0); + (this.folders.menu.firstElementChild as HTMLElement).click(); + appMessagesManager.construct(); + appStateManager.getState().then((state) => { + return this.onStateLoaded(state); + })/* .then(() => { + const isLoadedMain = appMessagesManager.dialogsStorage.isDialogsLoaded(0); + const isLoadedArchive = appMessagesManager.dialogsStorage.isDialogsLoaded(1); + const wasLoaded = isLoadedMain || isLoadedArchive; + const a: Promise = isLoadedMain ? Promise.resolve() : appMessagesManager.getConversationsAll('', 0); + const b: Promise = isLoadedArchive ? Promise.resolve() : appMessagesManager.getConversationsAll('', 1); + a.finally(() => { + b.then(() => { + if(wasLoaded) { + (apiUpdatesManager.updatesState.syncLoading || Promise.resolve()).then(() => { + appMessagesManager.refreshConversations(); + }); + } + }); + }); + }) */; + + new ConnectionStatusComponent(this.chatsContainer); + this.chatsContainer.append(bottomPart); + + setTimeout(() => { + lottieLoader.loadLottieWorkers(); + }, 200); + + this.onListLengthChange = debounce(this._onListLengthChange, 100, false, true); + } + + public get chatList() { + return this.sortedList.list; + } + + public setFilterId(filterId: number) { + this.filterId = filterId; + this.indexKey = appMessagesManager.dialogsStorage ? appMessagesManager.dialogsStorage.getDialogIndexKey(this.filterId) : 'index'; + rootScope.filterId = filterId; + } + + private initListeners() { rootScope.addEventListener('user_update', (userId) => { //console.log('updating user:', user, dialog); - const dom = this.getDialogDom(userId); - if(dom && !appUsersManager.isBot(userId) && userId !== rootScope.myId) { + const peerId = userId.toPeerId(); + const dom = this.getDialogDom(peerId); + if(dom && !appUsersManager.isBot(userId) && peerId !== rootScope.myId) { const user = appUsersManager.getUser(userId); const online = user.status?._ === 'userStatusOnline'; dom.avatarEl.classList.toggle('is-online', online); @@ -256,6 +358,10 @@ export class AppDialogsManager { this.setFiltersUnreadCount(); }); */ + rootScope.addEventListener('folder_unread', (folder) => { + this.setFilterUnreadCount(folder.id); + }); + rootScope.addEventListener('dialog_flush', ({peerId}) => { const dialog = appMessagesManager.getDialogOnly(peerId); if(dialog) { @@ -266,23 +372,20 @@ export class AppDialogsManager { }); rootScope.addEventListener('dialogs_multiupdate', (dialogs) => { - for(const id in dialogs) { - const dialog = dialogs[id]; + for(const peerId in dialogs) { + const dialog = dialogs[peerId]; this.updateDialog(dialog); if(this.processContact) { - this.processContact(+id); + this.processContact(peerId.toPeerId()); } this.validateDialogForFilter(dialog); } - - this.setFiltersUnreadCount(); }); rootScope.addEventListener('dialog_drop', ({peerId}) => { this.deleteDialog(peerId); - this.setFiltersUnreadCount(); if(this.processContact) { this.processContact(peerId); @@ -294,12 +397,12 @@ export class AppDialogsManager { if(dialog) { this.setUnreadMessages(dialog); this.validateDialogForFilter(dialog); - this.setFiltersUnreadCount(); } }); rootScope.addEventListener('dialog_notify_settings', (dialog) => { this.setUnreadMessages(dialog); // возможно это не нужно, но нужно менять is-muted + this.setFiltersUnreadCount(); }); rootScope.addEventListener('dialog_draft', ({dialog, drop, peerId}) => { @@ -317,7 +420,7 @@ export class AppDialogsManager { rootScope.addEventListener('peer_changed', (peerId) => { //const perf = performance.now(); for(const element of this.lastActiveElements) { - if(+element.dataset.peerId !== peerId) { + if(element.dataset.peerId.toPeerId() !== peerId) { element.classList.remove('active'); this.lastActiveElements.delete(element); } @@ -336,14 +439,12 @@ export class AppDialogsManager { this.addFilter(filter); return; } else if(filter.id === this.filterId) { // это нет тут смысла вызывать, так как будет dialogs_multiupdate - //this.validateForFilter(); - const folder = appMessagesManager.dialogsStorage.getFolder(filter.id); + const dialogs = appMessagesManager.dialogsStorage.getCachedDialogs(true); this.validateListForFilter(); - for(let i = 0, length = folder.length; i < length; ++i) { - const dialog = folder[i]; + for(let i = 0, length = dialogs.length; i < length; ++i) { + const dialog = dialogs[i]; this.updateDialog(dialog); } - this.setFiltersUnreadCount(); } const elements = this.filtersRendered[filter.id]; @@ -401,108 +502,15 @@ export class AppDialogsManager { this.unsetTyping(dialog); } }); - - rootScope.addEventListener('state_cleared', () => { - //setTimeout(() => - appStateManager.getState().then((state) => { - appUsersManager.clear(); - appChatsManager.clear(); - - const filtersStorage = appMessagesManager.filtersStorage; - const filters = filtersStorage.filters; - for(const filterId in filters) { // delete filters - rootScope.dispatchEvent('updateDialogFilter', { - _: 'updateDialogFilter', - id: +filterId, - }); - } - - appMessagesManager.clear(); - - /* const clearPromises: Promise[] = []; - for(const name in appStateManager.storagesResults) { - const results = appStateManager.storagesResults[name as keyof AppStateManager['storages']]; - const storage = appStateManager.storages[name as keyof AppStateManager['storages']]; - results.length = 0; - clearPromises.push(storage.clear()); - } */ - - this.validateListForFilter(); - - this.onStateLoaded(state); - })//, 5000); - }); - - const foldersScrollable = new ScrollableX(this.folders.menuScrollContainer); - bottomPart.prepend(this.folders.menuScrollContainer); - const selectTab = horizontalMenu(this.folders.menu, this.folders.container, (id, tabContent) => { - /* if(id !== 0) { - id += 1; - } */ - - id = +tabContent.dataset.filterId || 0; - - if(this.filterId === id) return; - - this.sortedLists[id].clear(); - this.setFilterId(id); - this.onTabChange(); - }, () => { - for(const folderId in this.sortedLists) { - if(+folderId !== this.filterId) { - this.sortedLists[folderId].clear(); - } - } - }, undefined, foldersScrollable); - - //selectTab(0); - (this.folders.menu.firstElementChild as HTMLElement).click(); - appMessagesManager.construct(); - appStateManager.getState().then((state) => { - return this.onStateLoaded(state); - }).then(() => { - // return; - - const isLoadedMain = appMessagesManager.dialogsStorage.isDialogsLoaded(0); - const isLoadedArchive = appMessagesManager.dialogsStorage.isDialogsLoaded(1); - const wasLoaded = isLoadedMain || isLoadedArchive; - const a: Promise = isLoadedMain ? Promise.resolve() : appMessagesManager.getConversationsAll('', 0); - const b: Promise = isLoadedArchive ? Promise.resolve() : appMessagesManager.getConversationsAll('', 1); - a.finally(() => { - b.then(() => { - this.accumulateArchivedUnread(); - - if(wasLoaded) { - (apiUpdatesManager.updatesState.syncLoading || Promise.resolve()).then(() => { - appMessagesManager.refreshConversations(); - }); - } - }); - }); - }); - - new ConnectionStatusComponent(this.chatsContainer); - this.chatsContainer.append(bottomPart); - - setTimeout(() => { - lottieLoader.loadLottieWorkers(); - }, 200); - - this.onListLengthChange = debounce(this._onListLengthChange, 100, false, true); - } - - public get chatList() { - return this.sortedList.list; - } - - public setFilterId(filterId: number) { - this.filterId = filterId; - this.indexKey = appMessagesManager.dialogsStorage ? appMessagesManager.dialogsStorage.getDialogIndexKey(this.filterId) : 'index'; - rootScope.filterId = filterId; } private async onStateLoaded(state: State) { appNotificationsManager.getNotifyPeerTypeSettings(); + + if(!this.initedListeners) { + this.initListeners(); + this.initedListeners = true; + } const renderFiltersPromise = appMessagesManager.filtersStorage.getDialogFilters().then((filters) => { for(const filter of filters) { @@ -521,14 +529,16 @@ export class AppDialogsManager { appDraftsManager.addMissedDialogs(); } - return this.onChatsScroll(); + return this.onChatsScroll().then(() => { + appMessagesManager.fillConversations(); + }); } /* private getOffset(side: 'top' | 'bottom'): {index: number, pos: number} { if(!this.scroll.loadedAll[side]) { const element = (side === 'top' ? this.chatList.firstElementChild : this.chatList.lastElementChild) as HTMLElement; if(element) { - const peerId = +element.dataset.peerId; + const peerId = element.dataset.peerId; const dialog = appMessagesManager.getDialogByPeerId(peerId); return {index: dialog[0].index, pos: dialog[1]}; } @@ -554,7 +564,7 @@ export class AppDialogsManager { return (!topOffset.index || index <= topOffset.index) && (!bottomOffset.index || index >= bottomOffset.index); } - private deleteDialog(peerId: number) { + private deleteDialog(peerId: PeerId) { this.sortedList.delete(peerId); } @@ -586,30 +596,20 @@ export class AppDialogsManager { this.onChatsScroll(); }; - private setFilterUnreadCount(filterId: number, folder?: Dialog[]) { + private setFilterUnreadCount(filterId: number) { const unreadSpan = filterId === 0 ? this.allUnreadCount : this.filtersRendered[filterId]?.unread; if(!unreadSpan) { return; } - folder = folder || appMessagesManager.dialogsStorage.getFolder(filterId); - let mutedCount = 0; - let notMutedCount = 0; - folder.forEach(dialog => { - const isMuted = appNotificationsManager.isPeerLocalMuted(dialog.peerId, true); - - if(isMuted && filterId === 0) { - return; - } - - const value = +!!dialog.unread_count || +dialog.pFlags.unread_mark || 0; // * unread_mark can be undefined - if(isMuted) mutedCount += value; - else notMutedCount += value; + const folder = appMessagesManager.dialogsStorage.getFolder(filterId); + const foundUnmuted = filterId === 0 || !!folder.dialogs.find(dialog => { + return (dialog.unread_count || dialog.pFlags.unread_mark) && !appNotificationsManager.isPeerLocalMuted(dialog.peerId, true); }); - unreadSpan.classList.toggle('badge-gray', mutedCount && !notMutedCount); + unreadSpan.classList.toggle('badge-gray', !foundUnmuted); - const sum = mutedCount + notMutedCount; + const sum = folder.unreadDialogsCount; unreadSpan.innerText = sum ? '' + sum : ''; } @@ -625,10 +625,10 @@ export class AppDialogsManager { * Удалит неподходящие чаты из списка, но не добавит их(!) */ private validateListForFilter() { - const filter = appMessagesManager.filtersStorage.getFilter(this.filterId); + const filter = appMessagesManager.filtersStorage.getFilter(this.filterId) || null; this.sortedList.getAll().forEach((element) => { const dialog = appMessagesManager.getDialogOnly(element.id); - if(!this.testDialogForFilter(dialog, filter || null)) { + if(!this.testDialogForFilter(dialog, filter)) { this.deleteDialog(element.id); } }); @@ -751,7 +751,7 @@ export class AppDialogsManager { if(this.loadDialogsPromise/* || 1 === 1 */) return this.loadDialogsPromise; const promise = new Promise(async(resolve) => { - const {chatList, filterId} = this; + const {chatList, filterId, indexKey} = this; //return; @@ -762,11 +762,11 @@ export class AppDialogsManager { const {index: currentOffsetIndex} = this.getOffsetIndex(side); if(currentOffsetIndex) { if(side === 'top') { - const storage = appMessagesManager.dialogsStorage.getFolder(filterId, true); - const index = storage.findIndex(dialog => dialog[this.indexKey] <= currentOffsetIndex); + const storage = appMessagesManager.dialogsStorage.getFolderDialogs(filterId, true); + const index = storage.findIndex(dialog => dialog[indexKey] <= currentOffsetIndex); const needIndex = Math.max(0, index - loadCount); loadCount = index - needIndex; - offsetIndex = storage[needIndex][this.indexKey] + 1; + offsetIndex = storage[needIndex][indexKey] + 1; } else { offsetIndex = currentOffsetIndex; } @@ -802,6 +802,8 @@ export class AppDialogsManager { } else if(result.isTopEnd) { this.scroll.loadedAll[side] = true; } + + this.loadedDialogsAtLeastOnce = true; if(result.dialogs.length) { const dialogs = side === 'top' ? result.dialogs.slice().reverse() : result.dialogs; @@ -829,7 +831,7 @@ export class AppDialogsManager { const offsetDialog = result.dialogs[side === 'top' ? 0 : result.dialogs.length - 1]; if(offsetDialog) { - this.offsets[side] = offsetDialog[this.indexKey]; + this.offsets[side] = offsetDialog[indexKey]; } this.log.debug('getDialogs ' + loadCount + ' dialogs by offset:', offsetIndex, result, chatList.childElementCount); @@ -968,7 +970,11 @@ export class AppDialogsManager { part.classList.add('with-placeholder'); } - public _onListLengthChange = () => { + private _onListLengthChange = () => { + if(!this.loadedDialogsAtLeastOnce) { + return; + } + this.checkIfPlaceholderNeeded(); if(this.filterId > 0) return; @@ -1000,7 +1006,7 @@ export class AppDialogsManager { section.container.classList.add('hide'); - appUsersManager.getContacts(undefined, undefined, 'online').then(contacts => { + appUsersManager.getContactsPeerIds(undefined, undefined, 'online').then(contacts => { const sortedUserList = new SortedUserList({avatarSize: 42, new: true}); this.loadContacts = () => { const pageCount = windowSize.windowH / 60 | 0; @@ -1018,7 +1024,7 @@ export class AppDialogsManager { this.loadContacts(); this.processContact = (peerId) => { - if(peerId < 0) { + if(peerId.isAnyChat()) { return; } @@ -1038,7 +1044,7 @@ export class AppDialogsManager { bottom.append(section.container); }; - private verifyUserIdForContacts = (peerId: number) => { + private verifyUserIdForContacts = (peerId: PeerId) => { const dialog = appMessagesManager.getDialogOnly(peerId); return !dialog; }; @@ -1128,7 +1134,7 @@ export class AppDialogsManager { sliced.push(...sliceFromEnd); sliced.forEach(el => { - const peerId = +el.dataset.peerId; + const peerId = el.dataset.peerId.toPeerId(); this.deleteDialog(peerId); }); @@ -1156,12 +1162,13 @@ export class AppDialogsManager { const firstDialog = this.getDialogFromElement(chatList.firstElementChild as HTMLElement); const lastDialog = this.getDialogFromElement(chatList.lastElementChild as HTMLElement); - this.offsets.top = firstDialog[this.indexKey]; - this.offsets.bottom = lastDialog[this.indexKey]; + const indexKey = this.indexKey; + this.offsets.top = firstDialog[indexKey]; + this.offsets.bottom = lastDialog[indexKey]; } private getDialogFromElement(element: HTMLElement) { - return appMessagesManager.getDialogOnly(+element.dataset.peerId); + return appMessagesManager.getDialogOnly(element.dataset.peerId.toPeerId()); } public onChatsScrollTop = () => { @@ -1215,12 +1222,12 @@ export class AppDialogsManager { if(elem) { if(onFound) onFound(); - const peerId = +elem.dataset.peerId; + const peerId = elem.dataset.peerId.toPeerId(); const lastMsgId = +elem.dataset.mid || undefined; setPeerFunc(peerId, lastMsgId); } else { - setPeerFunc(0); + setPeerFunc(NULL_PEER_ID); } }, {capture: true}); @@ -1228,7 +1235,7 @@ export class AppDialogsManager { list.addEventListener('dblclick', (e) => { const li = findUpTag(e.target, 'LI'); if(li) { - const peerId = +li.dataset.peerId; + const peerId = li.dataset.peerId.toPeerId(); this.log('debug dialog:', appMessagesManager.getDialogByPeerId(peerId)); } }); @@ -1361,7 +1368,7 @@ export class AppDialogsManager { bold.classList.add('danger'); bold.append(i18n('Draft'), ': '); dom.lastMessageSpan.prepend(bold); - } else if(peerId < 0 && peerId !== lastMessage.fromId && !lastMessage.action) { + } else if(peerId.isAnyChat() && peerId !== lastMessage.fromId && !lastMessage.action) { const sender = appPeersManager.getPeer(lastMessage.fromId); if(sender && sender.id) { const senderBold = document.createElement('b'); @@ -1398,10 +1405,6 @@ export class AppDialogsManager { } private setUnreadMessages(dialog: Dialog, dom = this.getDialogDom(dialog.peerId), isBatch = false) { - if(dialog.folder_id === 1) { - this.accumulateArchivedUnread(); - } - if(!dom) { //this.log.error('setUnreadMessages no dom!', dialog); return; @@ -1428,12 +1431,13 @@ export class AppDialogsManager { const filter = appMessagesManager.filtersStorage.getFilter(this.filterId); let isPinned: boolean; if(filter) { - isPinned = filter.pinned_peers.indexOf(dialog.peerId) !== -1; + isPinned = filter.pinnedPeerIds.indexOf(dialog.peerId) !== -1; } else { isPinned = !!dialog.pFlags.pinned; } - const hasUnreadBadge = isPinned || !!dialog.unread_count || dialog.pFlags.unread_mark; + const isDialogUnread = appMessagesManager.isDialogUnread(dialog); + const hasUnreadBadge = isPinned || isDialogUnread; // dom.messageEl.classList.toggle('has-badge', hasBadge); const isUnreadBadgeMounted = isInDOM(dom.unreadBadge); @@ -1441,7 +1445,7 @@ export class AppDialogsManager { dom.subtitleEl.append(dom.unreadBadge); } - const hasMentionsBadge = dialog.unread_mentions_count > 1; + const hasMentionsBadge = dialog.unread_mentions_count && (dialog.unread_mentions_count > 1 || dialog.unread_count > 1); const isMentionBadgeMounted = dom.mentionsBadge && isInDOM(dom.mentionsBadge); if(hasMentionsBadge) { if(!dom.mentionsBadge) { @@ -1480,7 +1484,7 @@ export class AppDialogsManager { dom.unreadBadge.innerText = '@'; isMention = true; // dom.unreadBadge.classList.add('tgico-mention', 'tgico'); - } else if(dialog.unread_count || dialog.pFlags.unread_mark) { + } else if(isDialogUnread) { //dom.unreadMessagesSpan.innerText = '' + (dialog.unread_count ? formatNumber(dialog.unread_count, 1) : ' '); dom.unreadBadge.innerText = '' + (dialog.unread_count || ' '); } else { @@ -1492,24 +1496,14 @@ export class AppDialogsManager { dom.unreadBadge.classList.toggle('mention', isMention); } - private accumulateArchivedUnread() { - if(this.accumulateArchivedTimeout) return; - this.accumulateArchivedTimeout = window.setTimeout(() => { - this.accumulateArchivedTimeout = 0; - const dialogs = appMessagesManager.dialogsStorage.getFolder(1); - const sum = dialogs.reduce((acc, dialog) => acc + dialog.unread_count, 0); - rootScope.dispatchEvent('dialogs_archived_unread', {count: sum}); - }, 0); - } - - private getDialogDom(peerId: number) { + private getDialogDom(peerId: PeerId) { // return this.doms[peerId]; const element = this.sortedList.get(peerId); return element?.dom; } - private getDialog(dialog: Dialog | number): Dialog { - if(typeof(dialog) === 'number') { + private getDialog(dialog: Dialog | PeerId): Dialog { + if(typeof(dialog) !== 'object' && dialog) { const originalDialog = appMessagesManager.getDialogOnly(dialog); if(!originalDialog) { return { @@ -1522,7 +1516,7 @@ export class AppDialogsManager { return originalDialog; } - return dialog; + return dialog as Dialog; } public addListDialog(options: Parameters[0] & {isBatch?: boolean}) { @@ -1545,7 +1539,7 @@ export class AppDialogsManager { } public addDialogNew(options: { - dialog: Dialog | number, + dialog: Parameters[0], container?: Parameters[1], drawStatus?: boolean, rippleEnabled?: boolean, @@ -1560,7 +1554,7 @@ export class AppDialogsManager { return this.addDialog(options.dialog, options.container, options.drawStatus, options.rippleEnabled, options.onlyFirstName, options.meAsSaved, options.append, options.avatarSize, options.autonomous, options.lazyLoadQueue, options.loadPromises); } - public addDialog(_dialog: Dialog | number, + public addDialog(_dialog: Parameters[0], container?: HTMLElement | Scrollable | DocumentFragment | false, drawStatus = true, rippleEnabled = true, @@ -1582,7 +1576,7 @@ export class AppDialogsManager { avatarEl.classList.add('dialog-avatar', 'avatar-' + avatarSize); if(drawStatus && peerId !== rootScope.myId) { - if(peerId > 0) { + if(peerId.isUser()) { const user = appUsersManager.getUser(peerId); //console.log('found user', user); diff --git a/src/lib/appManagers/appDocsManager.ts b/src/lib/appManagers/appDocsManager.ts index 0e8ed322..e2e8c21e 100644 --- a/src/lib/appManagers/appDocsManager.ts +++ b/src/lib/appManagers/appDocsManager.ts @@ -33,9 +33,9 @@ const EXTENSION_MIME_TYPE_MAP: {[key: string]: string} = { }; export class AppDocsManager { - private docs: {[docId: string]: MyDocument} = {}; - private savingLottiePreview: {[docId: string]: true} = {}; - public downloading: Map = new Map(); + private docs: {[docId: DocId]: MyDocument} = {}; + private savingLottiePreview: {[docId: DocId]: true} = {}; + public downloading: Map = new Map(); constructor() { apiManager.onServiceWorkerFail = this.onServiceWorkerFail; @@ -232,8 +232,8 @@ export class AppDocsManager { return doc; } - public getDoc(docId: string | MyDocument): MyDocument { - return isObject(docId) && typeof(docId) !== 'string' ? docId as any : this.docs[docId as string] as any; + public getDoc(docId: DocId | MyDocument): MyDocument { + return isObject(docId) ? docId : this.docs[docId]; } public getMediaInput(doc: MyDocument): InputMedia.inputMediaDocument { diff --git a/src/lib/appManagers/appDraftsManager.ts b/src/lib/appManagers/appDraftsManager.ts index ad17f8c1..bb03a703 100644 --- a/src/lib/appManagers/appDraftsManager.ts +++ b/src/lib/appManagers/appDraftsManager.ts @@ -43,11 +43,11 @@ export class AppDraftsManager { }); } - private getKey(peerId: number, threadId?: number) { + private getKey(peerId: PeerId, threadId?: number) { return '' + peerId + (threadId ? '_' + threadId : ''); } - public getDraft(peerId: number, threadId?: number) { + public getDraft(peerId: PeerId, threadId?: number) { return this.drafts[this.getKey(peerId, threadId)]; } @@ -58,7 +58,7 @@ export class AppDraftsManager { continue; } - const peerId = +key; + const peerId = key.toPeerId(); const dialog = appMessagesManager.getDialogOnly(peerId); if(!dialog) { appMessagesManager.reloadConversation(peerId); @@ -84,7 +84,7 @@ export class AppDraftsManager { ); } - public saveDraft(peerId: number, threadId: number, apiDraft: DraftMessage, options: Partial<{ + public saveDraft(peerId: PeerId, threadId: number, apiDraft: DraftMessage, options: Partial<{ notify: boolean, force: boolean }> = {}) { @@ -182,7 +182,7 @@ export class AppDraftsManager { return draft; } - public async syncDraft(peerId: number, threadId: number, localDraft?: MyDraftMessage, saveOnServer = true, force = false) { + public async syncDraft(peerId: PeerId, threadId: number, localDraft?: MyDraftMessage, saveOnServer = true, force = false) { // console.warn(dT(), 'sync draft', peerID) const serverDraft = this.getDraft(peerId, threadId); if(this.draftsAreEqual(serverDraft, localDraft)) { @@ -236,11 +236,10 @@ export class AppDraftsManager { return; } - for(const peerId in this.drafts) { - const splitted = peerId.split('_'); - const threadId = splitted[1]; + for(const combined in this.drafts) { + const [peerId, threadId] = combined.split('_'); rootScope.dispatchEvent('draft_updated', { - peerId: +splitted[0], + peerId: peerId.toPeerId(), threadId: threadId ? +threadId : undefined, draft: undefined }); @@ -248,7 +247,7 @@ export class AppDraftsManager { }); } - public clearDraft(peerId: number, threadId: number) { + public clearDraft(peerId: PeerId, threadId: number) { if(threadId) { this.syncDraft(peerId, threadId); } else { @@ -256,7 +255,7 @@ export class AppDraftsManager { } } - public setDraft(peerId: number, threadId: number, message: string, entities?: MessageEntity[]) { + public setDraft(peerId: PeerId, threadId: number, message: string, entities?: MessageEntity[]) { const draft: DraftMessage.draftMessage = { _: 'draftMessage', date: Date.now() / 1000 | 0, diff --git a/src/lib/appManagers/appEmojiManager.ts b/src/lib/appManagers/appEmojiManager.ts index 02619159..e33284ef 100644 --- a/src/lib/appManagers/appEmojiManager.ts +++ b/src/lib/appManagers/appEmojiManager.ts @@ -6,6 +6,7 @@ import App from "../../config/app"; import { MOUNT_CLASS_TO } from "../../config/debug"; +import { indexOfAndSplice } from "../../helpers/array"; import { validateInitObject } from "../../helpers/object"; import I18n from "../langPack"; import { isObject } from "../mtproto/bin_utils"; @@ -222,7 +223,7 @@ export class AppEmojiManager { public pushRecentEmoji(emoji: string) { emoji = RichTextProcessor.fixEmoji(emoji); this.getRecentEmojis().then(recent => { - recent.findAndSplice(e => e === emoji); + indexOfAndSplice(recent, emoji); recent.unshift(emoji); if(recent.length > RECENT_MAX_LENGTH) { recent.length = RECENT_MAX_LENGTH; diff --git a/src/lib/appManagers/appImManager.ts b/src/lib/appManagers/appImManager.ts index 0298e48a..ff3b56b6 100644 --- a/src/lib/appManagers/appImManager.ts +++ b/src/lib/appManagers/appImManager.ts @@ -68,6 +68,9 @@ import appMessagesIdsManager from './appMessagesIdsManager'; import { InternalLink, InternalLinkTypeMap, INTERNAL_LINK_TYPE } from './internalLink'; import RichTextProcessor from '../richtextprocessor'; import MEDIA_MIME_TYPES_SUPPORTED from '../../environment/mediaMimeTypesSupport'; +import { NULL_PEER_ID } from '../mtproto/mtproto_config'; +import telegramMeWebManager from '../mtproto/telegramMeWebManager'; +import { ONE_DAY } from '../../helpers/date'; //console.log('appImManager included33!'); @@ -234,6 +237,13 @@ export class AppImManager { // ! instance can be deactivated before the UI starts, because it waits in background for RAF that is delayed singleInstance.activateInstance(); + const setAuthorized = () => { + telegramMeWebManager.setAuthorized(true); + }; + + setInterval(setAuthorized, ONE_DAY); + setAuthorized(); + this.addAnchorListener<{}>({ name: 'showMaskedAlert', callback: (params, element) => { @@ -441,7 +451,7 @@ export class AppImManager { if(e.code === 'KeyC' && (e.ctrlKey || e.metaKey) && target.tagName !== 'INPUT') { return; } else if(e.altKey && (e.code === 'ArrowUp' || e.code === 'ArrowDown')) { - const folder = appMessagesManager.dialogsStorage.getFolder(rootScope.filterId, true); + const folder = appMessagesManager.dialogsStorage.getFolderDialogs(rootScope.filterId, true); let nextDialog: Dialog.dialog; if(!rootScope.peerId) { if(e.code === 'ArrowDown') { @@ -525,12 +535,13 @@ export class AppImManager { } case INTERNAL_LINK_TYPE.PRIVATE_POST: { - const peerId = -+link.channel; + const chatId: ChatId = link.channel; + const peerId = link.channel.toPeerId(true); - const chat = appChatsManager.getChat(-peerId); + const chat = appChatsManager.getChat(chatId); if(chat.deleted) { try { - await appChatsManager.resolveChannel(-peerId); + await appChatsManager.resolveChannel(chatId); } catch(err) { toastNew({langPackKey: 'LinkNotFound'}); throw err; @@ -562,7 +573,7 @@ export class AppImManager { if(chatInvite._ === 'chatInviteAlready' || chatInvite._ === 'chatInvitePeek'/* && chatInvite.expires > tsNow(true) */) { - this.setInnerPeer(-chatInvite.chat.id); + this.setInnerPeer(chatInvite.chat.id.toPeerId(true)); return; } @@ -636,7 +647,7 @@ export class AppImManager { switch(splitted[0]) { case '#/im': { - const p = params.p; + const p: string = params.p; let postId = params.post !== undefined ? appMessagesIdsManager.generateMessageId(+params.post) : undefined; switch(p[0]) { @@ -646,7 +657,7 @@ export class AppImManager { } default: { // peerId - this.setInnerPeer(postId ? -+p : +p, postId); + this.setInnerPeer(postId ? p.toPeerId(true) : p.toPeerId(), postId); break; } } @@ -660,7 +671,7 @@ export class AppImManager { public openUsername(username: string, msgId?: number, threadId?: number, commentId?: number) { return appUsersManager.resolveUsername(username).then(peer => { const isUser = peer._ === 'user'; - const peerId = isUser ? peer.id : -peer.id; + const peerId = isUser ? peer.id.toPeerId() : peer.id.toPeerId(true); if(threadId) return this.openThread(peerId, msgId, threadId); else if(commentId) return this.openComment(peerId, msgId, commentId); @@ -677,7 +688,7 @@ export class AppImManager { /** * Opens thread when peerId of discussion group is known */ - public openThread(peerId: number, lastMsgId: number, threadId: number) { + public openThread(peerId: PeerId, lastMsgId: number, threadId: number) { return appMessagesManager.wrapSingleMessage(peerId, threadId).then(() => { const message = appMessagesManager.getMessageByPeer(peerId, threadId); appMessagesManager.generateThreadServiceStartMessage(message); @@ -689,7 +700,7 @@ export class AppImManager { /** * Opens comment directly from original channel */ - public openComment(peerId: number, msgId: number, commentId: number) { + public openComment(peerId: PeerId, msgId: number, commentId: number) { return appMessagesManager.getDiscussionMessage(peerId, msgId).then(message => { return this.openThread(message.peerId, commentId, message.mid); }); @@ -852,7 +863,7 @@ export class AppImManager { appNavigationController.pushItem({ type: 'chat', onPop: (canAnimate) => { - this.setPeer(0, undefined, canAnimate); + this.setPeer(NULL_PEER_ID, undefined, canAnimate); blurActiveElement(); } }); @@ -1051,7 +1062,7 @@ export class AppImManager { type: 'im', onPop: (canAnimate) => { //this.selectTab(prevTabId, !isSafari); - this.setPeer(0, undefined, canAnimate); + this.setPeer(NULL_PEER_ID, undefined, canAnimate); } }); } @@ -1157,7 +1168,7 @@ export class AppImManager { }, 250 + 100); } - public setPeer(peerId: number, lastMsgId?: number, animate?: boolean): boolean { + public setPeer(peerId: PeerId, lastMsgId?: number, animate?: boolean): boolean { if(this.init) { this.init(); this.init = null; @@ -1227,7 +1238,7 @@ export class AppImManager { } } - public setInnerPeer(peerId: number, lastMsgId?: number, type: ChatType = 'chat', threadId?: number) { + public setInnerPeer(peerId: PeerId, lastMsgId?: number, type: ChatType = 'chat', threadId?: number) { // * prevent opening already opened peer const existingIndex = this.chats.findIndex(chat => chat.peerId === peerId && chat.type === type); if(existingIndex !== -1) { @@ -1253,7 +1264,7 @@ export class AppImManager { return this.setPeer(peerId, lastMsgId); } - public openScheduled(peerId: number) { + public openScheduled(peerId: PeerId) { this.setInnerPeer(peerId, undefined, 'scheduled'); } @@ -1299,7 +1310,7 @@ export class AppImManager { return el; } - public getPeerTyping(peerId: number, container?: HTMLElement) { + public getPeerTyping(peerId: PeerId, container?: HTMLElement) { if(!appUsersManager.isBot(peerId)) { const typings = appProfileManager.getPeerTypings(peerId); if(!typings || !typings.length) { @@ -1349,7 +1360,7 @@ export class AppImManager { } }; - const mapa = peerId > 0 ? langPackKeys.private : (typings.length > 1 ? langPackKeys.multi : langPackKeys.chat); + const mapa = peerId.isUser() ? langPackKeys.private : (typings.length > 1 ? langPackKeys.multi : langPackKeys.chat); let action = typing.action; if(typings.length > 1) { @@ -1388,9 +1399,9 @@ export class AppImManager { } let args: any[]; - if(peerId < 0) { + if(peerId.isAnyChat()) { args = [ - new PeerTitle({peerId: typing.userId, onlyFirstName: true}).element, + new PeerTitle({peerId: typing.userId.toPeerId(false), onlyFirstName: true}).element, typings.length - 1 ]; } @@ -1403,22 +1414,22 @@ export class AppImManager { } } - public async getPeerStatus(peerId: number) { + public async getPeerStatus(peerId: PeerId) { let subtitle: HTMLElement; if(!peerId) return ''; - if(peerId < 0) { // not human + if(peerId.isAnyChat()) { // not human let span = this.getPeerTyping(peerId); if(span) { return span; } - const chatInfo = await appProfileManager.getChatFull(-peerId) as any; + const chatInfo = await appProfileManager.getChatFull(peerId.toChatId()) as any; this.chat.log('chatInfo res:', chatInfo); const participants_count = chatInfo.participants_count || (chatInfo.participants && chatInfo.participants.participants && chatInfo.participants.participants.length) || 1; //if(participants_count) { - subtitle = appProfileManager.getChatMembersString(-peerId); + subtitle = appProfileManager.getChatMembersString(peerId.toChatId()); if(participants_count < 2) return subtitle; /* const onlines = await appChatsManager.getOnlines(chat.id); @@ -1454,7 +1465,7 @@ export class AppImManager { } } - public setPeerStatus(peerId: number, element: HTMLElement, needClear: boolean, useWhitespace: boolean, middleware: () => boolean) { + public setPeerStatus(peerId: PeerId, element: HTMLElement, needClear: boolean, useWhitespace: boolean, middleware: () => boolean) { if(needClear) { element.innerHTML = useWhitespace ? '‎' : ''; // ! HERE U CAN FIND WHITESPACE } diff --git a/src/lib/appManagers/appInlineBotsManager.ts b/src/lib/appManagers/appInlineBotsManager.ts index c40c3e64..a343c012 100644 --- a/src/lib/appManagers/appInlineBotsManager.ts +++ b/src/lib/appManagers/appInlineBotsManager.ts @@ -10,7 +10,7 @@ */ import { toast } from "../../components/toast"; -import { BotInlineResult, GeoPoint, InputGeoPoint, InputMedia, MessageEntity, ReplyMarkup } from "../../layer"; +import { BotInlineResult, GeoPoint, InputGeoPoint, InputMedia, MessageEntity, MessagesBotResults, ReplyMarkup } from "../../layer"; import appPeersManager from "./appPeersManager"; import apiManagerProxy from "../mtproto/mtprotoworker"; import { RichTextProcessor } from "../richtextprocessor"; @@ -28,8 +28,8 @@ import appStateManager from "./appStateManager"; export class AppInlineBotsManager { private inlineResults: {[queryAndResultIds: string]: BotInlineResult} = {}; private setHash: { - [botId: string]: { - peerId: number, + [botId: UserId]: { + peerId: PeerId, time: number } } = {}; @@ -45,7 +45,7 @@ export class AppInlineBotsManager { }; } - public getInlineResults(peerId: number, botId: number, query = '', offset = '', geo?: GeoPoint) { + public getInlineResults(peerId: PeerId, botId: BotId, query = '', offset = '', geo?: GeoPoint) { return apiManagerProxy.invokeApi('messages.getInlineBotResults', { bot: appUsersManager.getUserInput(botId), peer: appPeersManager.getInputPeerById(peerId), @@ -77,19 +77,20 @@ export class AppInlineBotsManager { }); } - public generateQId(queryId: string, resultId: string) { + public generateQId(queryId: MessagesBotResults.messagesBotResults['query_id'], resultId: string) { return queryId + '_' + resultId; } - private pushPopularBot(botId: number) { + private pushPopularBot(botId: BotId) { appUsersManager.getTopPeers('bots_inline').then((topPeers) => { - const index = topPeers.findIndex(topPeer => topPeer.id); + const botPeerId = botId.toPeerId(); + const index = topPeers.findIndex(topPeer => topPeer.id === botPeerId); let topPeer: MyTopPeer; if(index !== -1) { topPeer = topPeers[index]; } else { topPeer = { - id: botId, + id: botPeerId, rating: 0 }; } @@ -103,16 +104,16 @@ export class AppInlineBotsManager { }); } - public switchToPM(fromPeerId: number, botId: number, startParam: string) { + public switchToPM(fromPeerId: PeerId, botId: BotId, startParam: string) { this.setHash[botId] = {peerId: fromPeerId, time: Date.now()}; - rootScope.dispatchEvent('history_focus', {peerId: botId}); - return appMessagesManager.startBot(botId, 0, startParam); + rootScope.dispatchEvent('history_focus', {peerId: botId.toPeerId()}); + return appMessagesManager.startBot(botId, '0', startParam); } /* function resolveInlineMention (username) { return AppPeersManager.resolveUsername(username).then(function (peerId) { - if (peerId > 0) { + if (peerId.isUser()) { var bot = AppUsersManager.getUser(peerId) if (bot.pFlags.bot && bot.bot_inline_placeholder !== undefined) { var resolvedBot = { @@ -216,7 +217,7 @@ export class AppInlineBotsManager { }) } */ - public async checkSwitchReturn(botId: number) { + public async checkSwitchReturn(botId: BotId) { const bot = appUsersManager.getUser(botId); if(!bot || !bot.pFlags.bot || !bot.bot_inline_placeholder) { return; @@ -231,12 +232,12 @@ export class AppInlineBotsManager { } } - public switchInlineQuery(peerId: number, threadId: number, botId: number, query: string) { + public switchInlineQuery(peerId: PeerId, threadId: number, botId: BotId, query: string) { rootScope.dispatchEvent('history_focus', {peerId, threadId}); appDraftsManager.setDraft(peerId, threadId, '@' + appUsersManager.getUser(botId).username + ' ' + query); } - public callbackButtonClick(peerId: number, mid: number, button: any) { + public callbackButtonClick(peerId: PeerId, mid: number, button: any) { return apiManagerProxy.invokeApi('messages.getBotCallbackAnswer', { peer: appPeersManager.getInputPeerById(peerId), msg_id: appMessagesIdsManager.getServerMessageId(mid), @@ -268,8 +269,8 @@ export class AppInlineBotsManager { }) } */ - public sendInlineResult(peerId: number, botId: number, queryAndResultIds: string, options: Partial<{ - viaBotId: number, + public sendInlineResult(peerId: PeerId, botId: BotId, queryAndResultIds: string, options: Partial<{ + viaBotId: BotId, queryId: string, resultId: string, replyMarkup: ReplyMarkup, diff --git a/src/lib/appManagers/appMessagesManager.ts b/src/lib/appManagers/appMessagesManager.ts index a0976f4e..c778ee85 100644 --- a/src/lib/appManagers/appMessagesManager.ts +++ b/src/lib/appManagers/appMessagesManager.ts @@ -17,7 +17,7 @@ import { createPosterForVideo } from "../../helpers/files"; import { copy, getObjectKeysAndSort } from "../../helpers/object"; import { randomLong } from "../../helpers/random"; import { splitStringByLength, limitSymbols, escapeRegExp } from "../../helpers/string"; -import { Chat, ChatFull, Dialog as MTDialog, DialogPeer, DocumentAttribute, InputMedia, InputMessage, InputPeerNotifySettings, InputSingleMedia, Message, MessageAction, MessageEntity, MessageFwdHeader, MessageMedia, MessageReplies, MessageReplyHeader, MessagesDialogs, MessagesFilter, MessagesMessages, MethodDeclMap, NotifyPeer, PeerNotifySettings, PhotoSize, SendMessageAction, Update, Photo, Updates, ReplyMarkup, InputPeer, InputPhoto, InputDocument, InputGeoPoint, WebPage, GeoPoint, ReportReason, MessagesGetDialogs } from "../../layer"; +import { Chat, ChatFull, Dialog as MTDialog, DialogPeer, DocumentAttribute, InputMedia, InputMessage, InputPeerNotifySettings, InputSingleMedia, Message, MessageAction, MessageEntity, MessageFwdHeader, MessageMedia, MessageReplies, MessageReplyHeader, MessagesDialogs, MessagesFilter, MessagesMessages, MethodDeclMap, NotifyPeer, PeerNotifySettings, PhotoSize, SendMessageAction, Update, Photo, Updates, ReplyMarkup, InputPeer, InputPhoto, InputDocument, InputGeoPoint, WebPage, GeoPoint, ReportReason, MessagesGetDialogs, InputChannel, InputDialogPeer } from "../../layer"; import { InvokeApiOptions } from "../../types"; import I18n, { i18n, join, langPack, LangPackKey, _i18n } from "../langPack"; import { logger, LogTypes } from "../logger"; @@ -28,7 +28,7 @@ import referenceDatabase, { ReferenceContext } from "../mtproto/referenceDatabas import serverTimeManager from "../mtproto/serverTimeManager"; import { RichTextProcessor } from "../richtextprocessor"; import rootScope from "../rootScope"; -import DialogsStorage from "../storages/dialogs"; +import DialogsStorage, { GLOBAL_FOLDER_ID } from "../storages/dialogs"; import FiltersStorage from "../storages/filters"; //import { telegramMeWebService } from "../mtproto/mtproto"; import apiUpdatesManager from "./apiUpdatesManager"; @@ -48,10 +48,10 @@ import DEBUG, { MOUNT_CLASS_TO } from "../../config/debug"; import SlicedArray, { Slice, SliceEnd } from "../../helpers/slicedArray"; import appNotificationsManager, { NotifyOptions } from "./appNotificationsManager"; import PeerTitle from "../../components/peerTitle"; -import { forEachReverse } from "../../helpers/array"; +import { forEachReverse, indexOfAndSplice } from "../../helpers/array"; import htmlToDocumentFragment from "../../helpers/dom/htmlToDocumentFragment"; import htmlToSpan from "../../helpers/dom/htmlToSpan"; -import { MUTE_UNTIL, REPLIES_PEER_ID, SERVICE_PEER_ID } from "../mtproto/mtproto_config"; +import { MUTE_UNTIL, NULL_PEER_ID, REPLIES_PEER_ID, SERVICE_PEER_ID } from "../mtproto/mtproto_config"; import formatCallDuration from "../../helpers/formatCallDuration"; import appAvatarsManager from "./appAvatarsManager"; import telegramMeWebManager from "../mtproto/telegramMeWebManager"; @@ -61,7 +61,6 @@ import appMessagesIdsManager from "./appMessagesIdsManager"; import type { MediaSize } from "../../helpers/mediaSizes"; //console.trace('include'); -// TODO: если удалить сообщение в непрогруженном диалоге, то при обновлении, из-за стейта, последнего сообщения в чатлисте не будет // TODO: если удалить диалог находясь в папке, то он не удалится из папки и будет виден в настройках const APITIMEOUT = 0; @@ -121,24 +120,24 @@ type PendingAfterMsg = Partial }; - public pinnedMessages: {[peerId: string]: PinnedStorage}; + public pinnedMessages: {[peerId: PeerId]: PinnedStorage}; public threadsServiceMessagesIdsStorage: {[peerId_threadId: string]: number}; private threadsToReplies: { @@ -147,16 +146,15 @@ export class AppMessagesManager { private pendingByRandomId: { [randomId: string]: { - peerId: number, + peerId: PeerId, tempId: number, threadId: number, storage: MessagesStorage } } = {}; - private pendingByMessageId: {[mid: string]: string} = {}; - private pendingAfterMsgs: {[peerId: string]: PendingAfterMsg} = {}; - public pendingTopMsgs: {[peerId: string]: number} = {}; - private tempNum = 0; + private pendingByMessageId: {[mid: string]: Long} = {}; + private pendingAfterMsgs: {[peerId: PeerId]: PendingAfterMsg} = {}; + public pendingTopMsgs: {[peerId: PeerId]: number} = {}; private tempFinalizeCallbacks: { [tempId: string]: { [callbackName: string]: Partial<{ @@ -168,29 +166,29 @@ export class AppMessagesManager { private sendSmthLazyLoadQueue = new LazyLoadQueueBase(1); - private needSingleMessages: {[peerId: string]: number[]} = {}; + private needSingleMessages: Map>> = new Map(); private fetchSingleMessagesPromise: Promise = null; private maxSeenId = 0; - public migratedFromTo: {[peerId: number]: number} = {}; - public migratedToFrom: {[peerId: number]: number} = {}; + public migratedFromTo: {[peerId: PeerId]: PeerId} = {}; + public migratedToFrom: {[peerId: PeerId]: PeerId} = {}; private newMessagesHandleTimeout = 0; - private newMessagesToHandle: {[peerId: string]: Set} = {}; + private newMessagesToHandle: {[peerId: PeerId]: Set} = {}; private newDialogsHandlePromise: Promise; - private newDialogsToHandle: {[peerId: string]: Dialog} = {}; - public newUpdatesAfterReloadToHandle: {[peerId: string]: Set} = {}; + private newDialogsToHandle: {[peerId: PeerId]: Dialog} = {}; + public newUpdatesAfterReloadToHandle: {[peerId: PeerId]: Set} = {}; private notificationsHandlePromise = 0; - private notificationsToHandle: {[peerId: string]: { + private notificationsToHandle: {[peerId: PeerId]: { fwdCount: number, - fromId: number, + fromId: PeerId, topMessage?: MyMessage }} = {}; private reloadConversationsPromise: Promise; - private reloadConversationsPeers: Set = new Set(); + private reloadConversationsPeers: Map}> = new Map(); public log = logger('MESSAGES', LogTypes.Error | LogTypes.Debug | LogTypes.Log | LogTypes.Warn); @@ -199,12 +197,12 @@ export class AppMessagesManager { private groupedTempId = 0; - private typings: {[peerId: string]: {type: SendMessageAction['_'], timeout?: number}} = {}; + private typings: {[peerId: PeerId]: {type: SendMessageAction['_'], timeout?: number}} = {}; private middleware: ReturnType; - private unreadMentions: {[peerId: string]: SlicedArray} = {}; - private goToNextMentionPromises: {[peerId: string]: Promise} = {}; + private unreadMentions: {[peerId: PeerId]: SlicedArray} = {}; + private goToNextMentionPromises: {[peerId: PeerId]: Promise} = {}; constructor() { this.clear(); @@ -256,17 +254,16 @@ export class AppMessagesManager { // ! Invalidate notify settings, can optimize though rootScope.addEventListener('notify_peer_type_settings', ({key, settings}) => { - this.getConversationsAll().then(dialogs => { - let filterFunc: (dialog: Dialog) => boolean; - if(key === 'notifyUsers') filterFunc = (dialog) => dialog.peerId > 0; - else if(key === 'notifyBroadcasts') filterFunc = (dialog) => appChatsManager.isBroadcast(-dialog.peerId); - else filterFunc = (dialog) => appPeersManager.isAnyGroup(dialog.peerId); + const dialogs = this.dialogsStorage.getFolderDialogs(0).concat(this.dialogsStorage.getFolderDialogs(1)); + let filterFunc: (dialog: Dialog) => boolean; + if(key === 'notifyUsers') filterFunc = (dialog) => dialog.peerId.isUser(); + else if(key === 'notifyBroadcasts') filterFunc = (dialog) => dialog.peerId.isBroadcast(); + else filterFunc = (dialog) => appPeersManager.isAnyGroup(dialog.peerId); - dialogs - .filter(filterFunc) - .forEach(dialog => { - rootScope.dispatchEvent('dialog_notify_settings', dialog); - }); + dialogs + .filter(filterFunc) + .forEach(dialog => { + rootScope.dispatchEvent('dialog_notify_settings', dialog); }); }); @@ -324,7 +321,7 @@ export class AppMessagesManager { for(const key of set) { const [peerId, mid] = key.split('_'); - const message = this.getMessageByPeer(+peerId, +mid); + const message = this.getMessageByPeer(peerId.toPeerId(), +mid); this.setDialogToStateIfMessageIsTop(message); } } @@ -432,11 +429,11 @@ export class AppMessagesManager { }); } - public sendText(peerId: number, text: string, options: Partial<{ + public sendText(peerId: PeerId, text: string, options: Partial<{ entities: MessageEntity[], replyToMsgId: number, threadId: number, - viaBotId: number, + viaBotId: BotId, queryId: string, resultId: string, noWebPage: true, @@ -551,13 +548,14 @@ export class AppMessagesManager { //if(is(updates, updates._ === 'updateShortSentMessage')) { if(updates._ === 'updateShortSentMessage') { //assumeType(updates); - message.date = updates.date; - message.id = updates.id; - message.media = updates.media; - message.entities = updates.entities; - this.wrapMessageEntities(message); + const newMessage = copy(message); + newMessage.date = updates.date; + newMessage.id = updates.id; + newMessage.media = updates.media; + newMessage.entities = updates.entities; + this.wrapMessageEntities(newMessage); if(updates.pFlags.out) { - message.pFlags.out = true; + newMessage.pFlags.out = true; } // * override with new updates @@ -570,10 +568,10 @@ export class AppMessagesManager { updates: [{ _: 'updateMessageID', random_id: message.random_id, - id: updates.id + id: newMessage.id }, { _: options.scheduleDate ? 'updateNewScheduledMessage' : (isChannel ? 'updateNewChannelMessage' : 'updateNewMessage'), - message: message, + message: newMessage, pts: updates.pts, pts_count: updates.pts_count }] @@ -610,7 +608,7 @@ export class AppMessagesManager { }); } - public sendFile(peerId: number, file: File | Blob | MyDocument, options: Partial<{ + public sendFile(peerId: PeerId, file: File | Blob | MyDocument, options: Partial<{ isRoundMessage: true, isVoiceMessage: true, isGroupedItem: true, @@ -665,7 +663,7 @@ export class AppMessagesManager { let photo: MyPhoto, document: MyDocument; - let actionName: SendMessageAction['_']; + let actionName: Extract; if(isDocument) { // maybe it's a sticker or gif attachType = 'document'; apiFileName = ''; @@ -931,7 +929,7 @@ export class AppMessagesManager { case 'photo': inputMedia = { _: 'inputMediaUploadedPhoto', - file: inputFile + file: inputFile, }; break; @@ -940,6 +938,10 @@ export class AppMessagesManager { _: 'inputMediaUploadedDocument', file: inputFile, mime_type: fileType, + pFlags: { + force_file: actionName === 'sendMessageUploadDocumentAction' ? true : undefined, + // nosound_video: options.noSound ? true : undefined + }, attributes }; } @@ -1028,7 +1030,7 @@ export class AppMessagesManager { return {message, promise: sentDeferred}; } - public async sendAlbum(peerId: number, files: File[], options: Partial<{ + public async sendAlbum(peerId: PeerId, files: File[], options: Partial<{ isMedia: true, entities: MessageEntity[], replyToMsgId: number, @@ -1178,10 +1180,10 @@ export class AppMessagesManager { }); } - public sendOther(peerId: number, inputMedia: InputMedia, options: Partial<{ + public sendOther(peerId: PeerId, inputMedia: InputMedia, options: Partial<{ replyToMsgId: number, threadId: number, - viaBotId: number, + viaBotId: BotId, replyMarkup: ReplyMarkup, clearDraft: true, queryId: string @@ -1244,7 +1246,7 @@ export class AppMessagesManager { phone_number: inputMedia.phone_number, first_name: inputMedia.first_name, last_name: inputMedia.last_name, - user_id: inputMedia.user_id ?? 0, + user_id: inputMedia.user_id ?? '0', vcard: inputMedia.vcard }; break; @@ -1423,11 +1425,11 @@ export class AppMessagesManager { } } - private generateOutgoingMessage(peerId: number, options: Partial<{ + private generateOutgoingMessage(peerId: PeerId, options: Partial<{ scheduleDate: number, replyToMsgId: number, threadId: number, - viaBotId: number, + viaBotId: BotId, groupId: string, replyMarkup: ReplyMarkup, }>) { @@ -1481,10 +1483,10 @@ export class AppMessagesManager { return header; } - private generateReplies(peerId: number) { + private generateReplies(peerId: PeerId) { let replies: MessageReplies.messageReplies; if(appPeersManager.isBroadcast(peerId)) { - const channelFull = appProfileManager.chatsFull[-peerId] as ChatFull.channelFull; + const channelFull = appProfileManager.chatsFull[peerId.toChatId()] as ChatFull.channelFull; if(channelFull?.linked_chat_id) { replies = { _: 'messageReplies', @@ -1505,15 +1507,15 @@ export class AppMessagesManager { /** * Generate correct from_id according to anonymous or broadcast */ - private generateFromId(peerId: number) { - if(peerId < 0 && (appPeersManager.isBroadcast(peerId) || this.isAnonymousSending(peerId))) { + private generateFromId(peerId: PeerId) { + if(peerId.isAnyChat() && (peerId.isBroadcast() || this.isAnonymousSending(peerId))) { return undefined; } else { - return appPeersManager.getOutputPeer(appUsersManager.getSelf().id); + return appPeersManager.getOutputPeer(appUsersManager.getSelf().id.toPeerId()); } } - private generateFlags(peerId: number) { + private generateFlags(peerId: PeerId) { const pFlags: Message.message['pFlags'] = {}; const fromId = appUsersManager.getSelf().id; if(peerId !== fromId) { @@ -1531,7 +1533,7 @@ export class AppMessagesManager { return pFlags; } - private generateForwardHeader(peerId: number, originalMessage: Message.message) { + private generateForwardHeader(peerId: PeerId, originalMessage: Message.message) { const myId = appUsersManager.getSelf().id; if(originalMessage.fromId === myId && originalMessage.peerId === myId && !originalMessage.fwd_from) { return; @@ -1569,7 +1571,7 @@ export class AppMessagesManager { return fwdHeader; } - public generateFakeAvatarMessage(peerId: number, photo: Photo) { + public generateFakeAvatarMessage(peerId: PeerId, photo: Photo) { const maxId = Number.MAX_SAFE_INTEGER; const message = { _: 'messageService', @@ -1587,8 +1589,8 @@ export class AppMessagesManager { return message; } - public isAnonymousSending(peerId: number): boolean { - return peerId < 0 && appPeersManager.getPeer(peerId).admin_rights?.pFlags?.anonymous; + public isAnonymousSending(peerId: PeerId): boolean { + return peerId.isAnyChat() && appPeersManager.getPeer(peerId).admin_rights?.pFlags?.anonymous; } public setDialogTopMessage(message: MyMessage, dialog: MTDialog.dialog = this.getDialogOnly(message.peerId)) { @@ -1633,7 +1635,7 @@ export class AppMessagesManager { return false; } - public async refreshConversations() { + /* public async refreshConversations() { const limit = 200, outDialogs: Dialog[] = []; for(let folderId = 0; folderId < 2; ++folderId) { let offsetDate = 0; @@ -1668,9 +1670,19 @@ export class AppMessagesManager { rootScope.dispatchEvent('dialogs_multiupdate', obj); return outDialogs; + } */ + + public async fillConversations(): Promise { + const middleware = this.middleware.get(); + while(!this.dialogsStorage.isDialogsLoaded(GLOBAL_FOLDER_ID)) { + const result = await this.getTopMessages(100, GLOBAL_FOLDER_ID); + if(!middleware() || result.isEnd) { + break; + } + } } - public async getConversationsAll(query = '', folderId = 0) { + /* public async getConversationsAll(query = '', folderId = 0) { const limit = 200, outDialogs: Dialog[] = []; for(; folderId < 2; ++folderId) { let offsetIndex = 0; @@ -1687,13 +1699,13 @@ export class AppMessagesManager { } return outDialogs; - } + } */ - public getConversations(query = '', offsetIndex?: number, limit = 20, folderId = 0, skipMigrated?: boolean) { + public getConversations(query = '', offsetIndex?: number, limit?: number, folderId = 0, skipMigrated?: boolean) { return this.dialogsStorage.getDialogs(query, offsetIndex, limit, folderId, skipMigrated); } - public getReadMaxIdIfUnread(peerId: number, threadId?: number) { + public getReadMaxIdIfUnread(peerId: PeerId, threadId?: number) { const historyStorage = this.getHistoryStorage(peerId, threadId); if(threadId) { const chatHistoryStorage = this.getHistoryStorage(peerId); @@ -1702,7 +1714,7 @@ export class AppMessagesManager { return !message.pFlags.out && readMaxId < historyStorage.maxId ? readMaxId : 0; } else { const message = this.getMessageByPeer(peerId, historyStorage.maxId); - const readMaxId = peerId > 0 ? Math.max(historyStorage.readMaxId, historyStorage.readOutboxMaxId) : historyStorage.readMaxId; + const readMaxId = peerId.isUser() ? Math.max(historyStorage.readMaxId, historyStorage.readOutboxMaxId) : historyStorage.readMaxId; return !message.pFlags.out && readMaxId < historyStorage.maxId ? readMaxId : 0; } } @@ -1711,7 +1723,7 @@ export class AppMessagesManager { public getTopMessages(limit: number, folderId: number, offsetDate?: number) { //const dialogs = this.dialogsStorage.getFolder(folderId); let offsetId = 0; - let offsetPeerId = 0; + let offsetPeerId: PeerId; let offsetIndex = 0; if(offsetDate === undefined) { @@ -1723,6 +1735,7 @@ export class AppMessagesManager { offsetDate += serverTimeManager.serverTimeOffset; } + const useLimit = 100; const middleware = this.middleware.get(); // ! ВНИМАНИЕ: ОЧЕНЬ СЛОЖНАЯ ЛОГИКА: @@ -1733,8 +1746,8 @@ export class AppMessagesManager { offset_date: offsetDate, offset_id: offsetId, offset_peer: appPeersManager.getInputPeerById(offsetPeerId), - limit, - hash: 0 + limit: useLimit, + hash: '0' }; return apiManager.invokeApiSingle('messages.getDialogs', params, { @@ -1752,7 +1765,7 @@ export class AppMessagesManager { } */ // can reset pinned order here - if(!offsetId && !offsetDate && !offsetPeerId) { + if(!offsetId && !offsetDate && !offsetPeerId && folderId !== GLOBAL_FOLDER_ID) { this.dialogsStorage.resetPinnedOrder(folderId); } @@ -1764,13 +1777,26 @@ export class AppMessagesManager { appChatsManager.saveApiChats(dialogsResult.chats); this.saveMessages(dialogsResult.messages); + /* if(folderId === 0 && !offsetDate) { + const found = dialogsResult.dialogs.find(dialog => appPeersManager.getPeerId(dialog.peer) === -1325963535); + if(!found) { + debugger; + } + } */ + let maxSeenIdIncremented = offsetDate ? true : false; let hasPrepend = false; - const noIdsDialogs: {[peerId: number]: Dialog} = {}; + const noIdsDialogs: {[peerId: PeerId]: Dialog} = {}; + const setFolderId = folderId === GLOBAL_FOLDER_ID ? 0 : folderId; + const saveGlobalOffset = folderId === GLOBAL_FOLDER_ID; forEachReverse((dialogsResult.dialogs as Dialog[]), dialog => { //const d = Object.assign({}, dialog); // ! нужно передавать folderId, так как по папке !== 0 нет свойства folder_id - this.dialogsStorage.saveDialog(dialog, dialog.folder_id ?? folderId, true); + if(dialog.folder_id === undefined) { + dialog.folder_id = setFolderId; + } + + this.dialogsStorage.saveDialog(dialog, undefined, true, saveGlobalOffset); if(!maxSeenIdIncremented && !appPeersManager.isChannel(dialog.peerId || appPeersManager.getPeerId(dialog.peer))) { @@ -1808,13 +1834,16 @@ export class AppMessagesManager { } }); - if(Object.keys(noIdsDialogs).length) { + const keys = Object.keys(noIdsDialogs); + if(keys.length) { //setTimeout(() => { // test bad situation - this.reloadConversation(Object.keys(noIdsDialogs).map(id => +id)).then(() => { + const peerIds = keys.map(key => key.toPeerId()); + const promises = peerIds.map(peerId => this.reloadConversation(peerId)); + Promise.all(promises).then(() => { rootScope.dispatchEvent('dialogs_multiupdate', noIdsDialogs); - for(let peerId in noIdsDialogs) { - rootScope.dispatchEvent('dialog_unread', {peerId: +peerId}); + for(let i = 0; i < peerIds.length; ++i) { + rootScope.dispatchEvent('dialog_unread', {peerId: peerIds[i]}); } }); //}, 10e3); @@ -1823,10 +1852,10 @@ export class AppMessagesManager { const count = (dialogsResult as MessagesDialogs.messagesDialogsSlice).count; // exclude empty draft dialogs - const dialogs = this.dialogsStorage.getFolder(folderId, false); + const folderDialogs = this.dialogsStorage.getFolderDialogs(folderId, false); let dialogsLength = 0; - for(let i = 0, length = dialogs.length; i < length; ++i) { - if(appMessagesIdsManager.getServerMessageId(dialogs[i].top_message)) { + for(let i = 0, length = folderDialogs.length; i < length; ++i) { + if(appMessagesIdsManager.getServerMessageId(folderDialogs[i].top_message)) { ++dialogsLength; } } @@ -1845,15 +1874,17 @@ export class AppMessagesManager { rootScope.dispatchEvent('dialogs_multiupdate', {}); } + const dialogs = (dialogsResult as MessagesDialogs.messagesDialogsSlice).dialogs; + const slicedDialogs = limit === useLimit ? dialogs : dialogs.slice(0, limit); return { - isEnd, + isEnd: isEnd && slicedDialogs[slicedDialogs.length - 1] === dialogs[dialogs.length - 1], count, - dialogs: (dialogsResult as MessagesDialogs.messagesDialogsSlice).dialogs + dialogs: slicedDialogs }; }); } - public forwardMessages(peerId: number, fromPeerId: number, mids: number[], options: Partial<{ + public forwardMessages(peerId: PeerId, fromPeerId: PeerId, mids: number[], options: Partial<{ withMyScore: true, silent: true, scheduleDate: number @@ -1966,13 +1997,13 @@ export class AppMessagesManager { return storage; } - public getMessagesStorage(peerId: number) { + public getMessagesStorage(peerId: PeerId) { return this.messagesStorageByPeerId[peerId] ?? (this.messagesStorageByPeerId[peerId] = this.createMessageStorage()); } public getMessageById(messageId: number) { for(const peerId in this.messagesStorageByPeerId) { - if(appPeersManager.isChannel(+peerId)) { + if(appPeersManager.isChannel(peerId.toPeerId())) { continue; } @@ -1985,7 +2016,7 @@ export class AppMessagesManager { return this.getMessageFromStorage(null, messageId); } - public getMessageByPeer(peerId: number, messageId: number) { + public getMessageByPeer(peerId: PeerId, messageId: number) { if(!peerId) { return this.getMessageById(messageId); } @@ -1993,40 +2024,79 @@ export class AppMessagesManager { return this.getMessageFromStorage(this.getMessagesStorage(peerId), messageId); } - public getMessagePeer(message: any): number { - const toId = message.peer_id && appPeersManager.getPeerId(message.peer_id) || 0; + public getMessagePeer(message: any): PeerId { + const toId = message.peer_id && appPeersManager.getPeerId(message.peer_id) || NULL_PEER_ID; return toId; } - public getDialogByPeerId(peerId: number): [Dialog, number] | [] { + public getDialogByPeerId(peerId: PeerId): [Dialog, number] | [] { return this.dialogsStorage.getDialog(peerId); } - public getDialogOnly(peerId: number) { + public getDialogOnly(peerId: PeerId) { return this.dialogsStorage.getDialogOnly(peerId); } - public reloadConversation(peerId?: number | number[]) { - if(peerId !== undefined) { - [].concat(peerId).forEach(peerId => { - if(!this.reloadConversationsPeers.has(peerId)) { - this.reloadConversationsPeers.add(peerId); - //this.log('will reloadConversation', peerId); - } + public reloadConversation(inputPeer?: PeerId | InputPeer): CancellablePromise; + public reloadConversation(inputPeer: PeerId | InputPeer) { + let promise: CancellablePromise; + if(inputPeer !== undefined) { + const peerId = appPeersManager.getPeerId(inputPeer); + let obj = this.reloadConversationsPeers.get(peerId); + if(obj) { + promise = obj.promise; + } + + if(promise) { + return promise; + } + + promise = deferredPromise(); + this.reloadConversationsPeers.set(peerId, obj = { + inputDialogPeer: appPeersManager.getInputDialogPeerById(inputPeer), + promise }); } - if(this.reloadConversationsPromise) return this.reloadConversationsPromise; - return this.reloadConversationsPromise = new Promise((resolve, reject) => { + if(this.reloadConversationsPromise) { + return promise || this.reloadConversationsPromise; + } + + this.reloadConversationsPromise = new Promise((resolve, reject) => { setTimeout(() => { - const peers = Array.from(this.reloadConversationsPeers).map(peerId => appPeersManager.getInputDialogPeerById(peerId)); + const inputDialogPeers: InputDialogPeer[] = []; + const promises: {[peerId: string]: typeof promise} = {}; + for(const [peerId, {inputDialogPeer, promise}] of this.reloadConversationsPeers) { + inputDialogPeers.push(inputDialogPeer); + promises[peerId] = promise; + } + this.reloadConversationsPeers.clear(); - apiManager.invokeApi('messages.getPeerDialogs', {peers}).then((result) => { + const fullfillLeft = () => { + for(const peerId in promises) { + promises[peerId].resolve(undefined); + } + }; + + apiManager.invokeApi('messages.getPeerDialogs', {peers: inputDialogPeers}).then((result) => { this.dialogsStorage.applyDialogs(result); + + result.dialogs.forEach((dialog) => { + const peerId = dialog.peerId; + if(peerId) { + promises[peerId].resolve(dialog as Dialog); + delete promises[peerId]; + } + }); + + fullfillLeft(); resolve(); - }, reject).finally(() => { + }, (err) => { + fullfillLeft(); + reject(err); + }).finally(() => { this.reloadConversationsPromise = null; if(this.reloadConversationsPeers.size) { @@ -2035,6 +2105,8 @@ export class AppMessagesManager { }); }, 0); }); + + return promise || this.reloadConversationsPromise; } private doFlushHistory(peer: InputPeer, just_clear?: boolean, revoke?: boolean): Promise { @@ -2061,13 +2133,13 @@ export class AppMessagesManager { }); } - public async flushHistory(peerId: number, justClear?: boolean, revoke?: boolean) { + public async flushHistory(peerId: PeerId, justClear?: boolean, revoke?: boolean) { if(appPeersManager.isChannel(peerId)) { const promise = this.getHistory(peerId, 0, 1); const historyResult = promise instanceof Promise ? await promise : promise; - const channelId = -peerId; + const channelId = peerId.toChatId(); const maxId = historyResult.history[0] || 0; return apiManager.invokeApiSingle('channels.deleteHistory', { channel: appChatsManager.getChannelInput(channelId), @@ -2090,12 +2162,16 @@ export class AppMessagesManager { this.searchesStorage, this.pinnedMessages, this.pendingAfterMsgs, - this.pendingTopMsgs, - this.needSingleMessages + this.pendingTopMsgs ].forEach(s => { delete s[peerId]; }); + const m = this.needSingleMessages.get(peerId); + if(m) { + m.clear(); + } + [ this.messagesStorageByPeerId, this.scheduledMessagesStorage @@ -2119,7 +2195,7 @@ export class AppMessagesManager { }); } - public hidePinnedMessages(peerId: number) { + public hidePinnedMessages(peerId: PeerId) { return Promise.all([ appStateManager.getState(), this.getPinnedMessage(peerId) @@ -2130,7 +2206,7 @@ export class AppMessagesManager { }); } - public getPinnedMessage(peerId: number) { + public getPinnedMessage(peerId: PeerId) { const p = this.pinnedMessages[peerId] ?? (this.pinnedMessages[peerId] = {}); if(p.promise) return p.promise; else if(p.maxId) return Promise.resolve(p); @@ -2149,7 +2225,7 @@ export class AppMessagesManager { }); } - public updatePinnedMessage(peerId: number, mid: number, unpin?: boolean, silent?: boolean, pm_oneside?: boolean) { + public updatePinnedMessage(peerId: PeerId, mid: number, unpin?: boolean, silent?: boolean, pm_oneside?: boolean) { return apiManager.invokeApi('messages.updatePinnedMessage', { peer: appPeersManager.getInputPeerById(peerId), unpin, @@ -2162,7 +2238,7 @@ export class AppMessagesManager { }); } - public unpinAllMessages(peerId: number): Promise { + public unpinAllMessages(peerId: PeerId): Promise { return apiManager.invokeApiSingle('messages.unpinAllMessages', { peer: appPeersManager.getInputPeerById(peerId) }).then(affectedHistory => { @@ -2242,7 +2318,7 @@ export class AppMessagesManager { return out; } - public generateTempMessageId(peerId: number) { + public generateTempMessageId(peerId: PeerId) { const dialog = this.getDialogOnly(peerId); return appMessagesIdsManager.generateMessageId(dialog?.top_message || 0, true); } @@ -2269,8 +2345,7 @@ export class AppMessagesManager { const peerId = this.getMessagePeer(message); const storage = options.storage || this.getMessagesStorage(peerId); const isChannel = message.peer_id._ === 'peerChannel'; - const channelId = isChannel ? -peerId : 0; - const isBroadcast = isChannel && appChatsManager.isBroadcast(channelId); + const isBroadcast = isChannel && appChatsManager.isBroadcast(peerId.toChatId()); if(options.isScheduled) { message.pFlags.is_scheduled = true; @@ -2341,7 +2416,7 @@ export class AppMessagesManager { message.savedFrom = savedFromPeerId + '_' + savedFromMid; } - /* if(peerId < 0 || peerId === myID) { + /* if(peerId.isAnyChat() || peerId === myID) { message.fromId = appPeersManager.getPeerID(!message.from_id || deepEqual(message.from_id, fwdHeader.from_id) ? fwdHeader.from_id : message.from_id); } */ /* } else { @@ -2410,18 +2485,29 @@ export class AppMessagesManager { } if(message.action) { - const action = message.action; - let migrateFrom: number; - let migrateTo: number; + const action = message.action as MessageAction; + let migrateFrom: PeerId; + let migrateTo: PeerId; const suffix = message.fromId === appUsersManager.getSelf().id ? 'You' : ''; + + if((action as MessageAction.messageActionChatEditPhoto).photo) { + (action as MessageAction.messageActionChatEditPhoto).photo = appPhotosManager.savePhoto((action as MessageAction.messageActionChatEditPhoto).photo, mediaContext); + } + + if((action as any).document) { + (action as any).document = appDocsManager.saveDoc((action as any).photo, mediaContext); + } + switch(action._) { //case 'messageActionChannelEditPhoto': case 'messageActionChatEditPhoto': - action.photo = appPhotosManager.savePhoto(action.photo, mediaContext); - if(action.photo.video_sizes) { + // action.photo = appPhotosManager.savePhoto(action.photo, mediaContext); + if((action.photo as Photo.photo)?.video_sizes) { + // @ts-ignore action._ = isBroadcast ? 'messageActionChannelEditVideo' : 'messageActionChatEditVideo'; } else { if(isBroadcast) { // ! messageActionChannelEditPhoto не существует в принципе, это используется для перевода. + // @ts-ignore action._ = 'messageActionChannelEditPhoto'; } } @@ -2440,6 +2526,7 @@ export class AppMessagesManager { type = 'ended_by' + suffix; } + // @ts-ignore action.type = type; break; @@ -2447,51 +2534,59 @@ export class AppMessagesManager { case 'messageActionChatEditTitle': /* if(options.isNew) { - const chat = appChatsManager.getChat(-peerId); + const chat = appChatsManager.getChat(peerId.toChatId()); chat.title = action.title; appChatsManager.saveApiChat(chat, true); } */ if(isBroadcast) { + // @ts-ignore action._ = 'messageActionChannelEditTitle'; } break; case 'messageActionChatDeletePhoto': if(isBroadcast) { + // @ts-ignore action._ = 'messageActionChannelDeletePhoto'; } break; case 'messageActionChatAddUser': if(action.users.length === 1) { + // @ts-ignore action.user_id = action.users[0]; + // @ts-ignore if(message.fromId === action.user_id) { if(isChannel) { + // @ts-ignore action._ = 'messageActionChatJoined' + suffix; } else { + // @ts-ignore action._ = 'messageActionChatReturn' + suffix; } } } else if(action.users.length > 1) { + // @ts-ignore action._ = 'messageActionChatAddUsers'; } break; case 'messageActionChatDeleteUser': if(message.fromId === action.user_id) { + // @ts-ignore action._ = 'messageActionChatLeave' + suffix; } break; case 'messageActionChannelMigrateFrom': - migrateFrom = -action.chat_id; - migrateTo = -channelId; + migrateFrom = action.chat_id.toPeerId(true); + migrateTo = peerId; break case 'messageActionChatMigrateTo': - migrateFrom = -channelId; - migrateTo = -action.channel_id; + migrateFrom = peerId; + migrateTo = action.channel_id.toPeerId(true); break; case 'messageActionHistoryClear': @@ -2502,6 +2597,7 @@ export class AppMessagesManager { break; case 'messageActionPhoneCall': + // @ts-ignore action.type = (message.pFlags.out ? 'out_' : 'in_') + ( @@ -2781,7 +2877,7 @@ export class AppMessagesManager { let langPackKey: LangPackKey; let args: any[]; - const getNameDivHTML = (peerId: number, plain: boolean) => { + const getNameDivHTML = (peerId: PeerId, plain: boolean) => { return plain ? appPeersManager.getPeerTitle(peerId, plain) + ' ' : (new PeerTitle({peerId})).element; }; @@ -2812,7 +2908,7 @@ export class AppMessagesManager { if(peerIds[0] === myId) a += 'You'; a += 'Invited'; if(peerIds[1] === myId) a += 'You'; - peerIds.findAndSplice(peerId => peerId === myId); + indexOfAndSplice(peerIds, myId); langPackKey = a as LangPackKey; args = peerIds.map(peerId => getNameDivHTML(peerId, plain)); @@ -2900,26 +2996,26 @@ export class AppMessagesManager { case 'messageActionChatDeleteUser': case 'messageActionChatAddUsers': case 'messageActionChatAddUser': { - const users: number[] = (action as MessageAction.messageActionChatAddUser).users + const users = (action as MessageAction.messageActionChatAddUser).users || [(action as MessageAction.messageActionChatDeleteUser).user_id]; args = [getNameDivHTML(message.fromId, plain)]; if(users.length > 1) { if(plain) { - args.push(...users.map((userId: number) => (getNameDivHTML(userId, true) as string).trim()).join(', ')); + args.push(...users.map((userId: UserId) => (getNameDivHTML(userId.toPeerId(), true) as string).trim()).join(', ')); } else { const fragment = document.createElement('span'); fragment.append( ...join( - users.map((userId: number) => getNameDivHTML(userId, false)) as HTMLElement[], + users.map((userId: UserId) => getNameDivHTML(userId.toPeerId(), false)) as HTMLElement[], false ) ); args.push(fragment); } } else { - args.push(getNameDivHTML(users[0], plain)); + args.push(getNameDivHTML(users[0].toPeerId(), plain)); } break; @@ -2962,7 +3058,7 @@ export class AppMessagesManager { } } - public reportMessages(peerId: number, mids: number[], reason: ReportReason['_'], message?: string) { + public reportMessages(peerId: PeerId, mids: number[], reason: ReportReason['_'], message?: string) { return apiManager.invokeApiSingle('messages.report', { peer: appPeersManager.getInputPeerById(peerId), id: mids.map(mid => appMessagesIdsManager.getServerMessageId(mid)), @@ -2973,8 +3069,8 @@ export class AppMessagesManager { }); } - public startBot(botId: number, chatId: number, startParam: string) { - const peerId = chatId ? -chatId : botId; + public startBot(botId: BotId, chatId: ChatId, startParam: string) { + const peerId = chatId ? chatId.toPeerId(true) : botId.toPeerId(); if(startParam) { const randomId = randomLong(); @@ -3013,7 +3109,7 @@ export class AppMessagesManager { return this.sendText(peerId, str); } - public editPeerFolders(peerIds: number[], folderId: number) { + public editPeerFolders(peerIds: PeerId[], folderId: number) { apiManager.invokeApi('folders.editPeerFolders', { folder_peers: peerIds.map(peerId => { return { @@ -3028,7 +3124,7 @@ export class AppMessagesManager { }); } - public toggleDialogPin(peerId: number, filterId?: number) { + public toggleDialogPin(peerId: PeerId, filterId?: number) { if(filterId > 1) { return this.filtersStorage.toggleDialogPin(peerId, filterId); } @@ -3061,7 +3157,7 @@ export class AppMessagesManager { }); } - public markDialogUnread(peerId: number, read?: true) { + public markDialogUnread(peerId: PeerId, read?: true) { const dialog = this.getDialogOnly(peerId); if(!dialog) return Promise.reject(); @@ -3081,14 +3177,14 @@ export class AppMessagesManager { }); } - public migrateChecks(migrateFrom: number, migrateTo: number) { + public migrateChecks(migrateFrom: PeerId, migrateTo: PeerId) { if(!this.migratedFromTo[migrateFrom] && !this.migratedToFrom[migrateTo] && - appChatsManager.hasChat(-migrateTo)) { - const fromChat = appChatsManager.getChat(-migrateFrom); + appChatsManager.hasChat(migrateTo.toChatId())) { + const fromChat = appChatsManager.getChat(migrateFrom.toChatId()); if(fromChat && fromChat.migrated_to && - fromChat.migrated_to.channel_id === -migrateTo) { + fromChat.migrated_to.channel_id === migrateTo.toChatId()) { this.migratedFromTo[migrateFrom] = migrateTo; this.migratedToFrom[migrateTo] = migrateFrom; @@ -3157,14 +3253,14 @@ export class AppMessagesManager { public canDeleteMessage(message: MyMessage) { return message && ( - message.peerId > 0 + message.peerId.isUser() || message.fromId === rootScope.myId - || appChatsManager.getChat(message.peerId)._ === 'chat' - || appChatsManager.hasRights(message.peerId, 'delete_messages') + || appChatsManager.getChat(message.peerId.toChatId())._ === 'chat' + || appChatsManager.hasRights(message.peerId.toChatId(), 'delete_messages') ) && !message.pFlags.is_outgoing; } - public getReplyKeyboard(peerId: number) { + public getReplyKeyboard(peerId: PeerId) { return this.getHistoryStorage(peerId).replyMarkup; } @@ -3247,13 +3343,13 @@ export class AppMessagesManager { return false; } - public getSearchStorage(peerId: number, inputFilter: MyInputMessagesFilter) { + public getSearchStorage(peerId: PeerId, inputFilter: MyInputMessagesFilter) { if(!this.searchesStorage[peerId]) this.searchesStorage[peerId] = {}; if(!this.searchesStorage[peerId][inputFilter]) this.searchesStorage[peerId][inputFilter] = {history: []}; return this.searchesStorage[peerId][inputFilter]; } - public getSearchCounters(peerId: number, filters: MessagesFilter[], canCache = true) { + public getSearchCounters(peerId: PeerId, filters: MessagesFilter[], canCache = true) { const func = (canCache ? apiManager.invokeApiCacheable : apiManager.invokeApi).bind(apiManager); return func('messages.getSearchCounters', { peer: appPeersManager.getInputPeerById(peerId), @@ -3396,7 +3492,7 @@ export class AppMessagesManager { } public getSearch({peerId, query, inputFilter, maxId, limit, nextRate, backLimit, threadId, folderId, minDate, maxDate}: { - peerId?: number, + peerId?: PeerId, maxId?: number, limit?: number, nextRate?: number, @@ -3415,7 +3511,6 @@ export class AppMessagesManager { offset_id_offset: number, history: MyMessage[] }> { - if(!peerId) peerId = 0; if(!query) query = ''; if(!inputFilter) inputFilter = {_: 'inputMessagesFilterEmpty'}; if(limit === undefined) limit = 20; @@ -3486,7 +3581,7 @@ export class AppMessagesManager { add_offset: backLimit ? -backLimit : 0, max_id: 0, min_id: 0, - hash: 0, + hash: '', top_msg_id: appMessagesIdsManager.getServerMessageId(threadId) || 0 }, { //timeout: APITIMEOUT, @@ -3494,7 +3589,7 @@ export class AppMessagesManager { }); } else { //var offsetDate = 0; - let offsetPeerId = 0; + let offsetPeerId: PeerId; let offsetId = 0; let offsetMessage = maxId && this.getMessageByPeer(peerId, maxId); @@ -3541,10 +3636,10 @@ export class AppMessagesManager { searchResult.messages.forEach((message: any) => { const peerId = this.getMessagePeer(message); - if(peerId < 0) { - const chat = appChatsManager.getChat(-peerId); + if(peerId.isAnyChat()) { + const chat: Chat.chat = appChatsManager.getChat(peerId.toChatId()); if(chat.migrated_to) { - this.migrateChecks(peerId, -chat.migrated_to.channel_id); + this.migrateChecks(peerId, (chat.migrated_to as InputChannel.inputChannel).channel_id.toPeerId(true)); } } @@ -3560,7 +3655,7 @@ export class AppMessagesManager { }); } - public subscribeRepliesThread(peerId: number, mid: number) { + public subscribeRepliesThread(peerId: PeerId, mid: number) { const repliesKey = peerId + '_' + mid; for(const threadKey in this.threadsToReplies) { if(this.threadsToReplies[threadKey] === repliesKey) return; @@ -3581,7 +3676,7 @@ export class AppMessagesManager { }, id: appMessagesIdsManager.generateMessageId(maxMessageId, true), date: message.date, - from_id: {_: 'peerUser', user_id: 0}/* message.from_id */, + from_id: {_: 'peerUser', user_id: NULL_PEER_ID}/* message.from_id */, peer_id: message.peer_id, action: { _: 'messageActionDiscussionStarted' @@ -3593,7 +3688,7 @@ export class AppMessagesManager { this.threadsServiceMessagesIdsStorage[threadKey] = serviceStartMessage.mid; } - public getDiscussionMessage(peerId: number, mid: number) { + public getDiscussionMessage(peerId: PeerId, mid: number) { return apiManager.invokeApiSingle('messages.getDiscussionMessage', { peer: appPeersManager.getInputPeerById(peerId), msg_id: appMessagesIdsManager.getServerMessageId(mid) @@ -3618,7 +3713,7 @@ export class AppMessagesManager { }); } - private handleNewMessage(peerId: number, mid: number) { + private handleNewMessage(peerId: PeerId, mid: number) { if(this.newMessagesToHandle[peerId] === undefined) { this.newMessagesToHandle[peerId] = new Set(); } @@ -3643,11 +3738,11 @@ export class AppMessagesManager { for(const peerId in obj) { const dialog = obj[peerId]; if(!dialog) { - this.reloadConversation(+peerId); + this.reloadConversation(peerId.toPeerId()); delete obj[peerId]; } else { this.dialogsStorage.pushDialog(dialog); - if(!appPeersManager.isChannel(+peerId)) { + if(!appPeersManager.isChannel(peerId.toPeerId())) { newMaxSeenId = Math.max(newMaxSeenId, dialog.top_message || 0); } } @@ -3663,7 +3758,7 @@ export class AppMessagesManager { this.newDialogsToHandle = {}; }; - public scheduleHandleNewDialogs(peerId?: number, dialog?: Dialog) { + public scheduleHandleNewDialogs(peerId?: PeerId, dialog?: Dialog) { if(peerId !== undefined) { this.newDialogsToHandle[peerId] = dialog; } @@ -3678,13 +3773,13 @@ export class AppMessagesManager { }); } - public deleteMessages(peerId: number, mids: number[], revoke?: boolean) { + public deleteMessages(peerId: PeerId, mids: number[], revoke?: boolean) { let promise: Promise; const localMessageIds = mids.map(mid => appMessagesIdsManager.getServerMessageId(mid)); - if(peerId < 0 && appPeersManager.isChannel(peerId)) { - const channelId = -peerId; + if(peerId.isAnyChat() && appPeersManager.isChannel(peerId)) { + const channelId = peerId.toChatId(); const channel: Chat.channel = appChatsManager.getChat(channelId); if(!channel.pFlags.creator && !channel.admin_rights?.pFlags?.delete_messages) { mids = mids.filter((mid) => { @@ -3726,8 +3821,7 @@ export class AppMessagesManager { return promise; } - // TODO: cancel notification by peer when this function is being called - public readHistory(peerId: number, maxId = 0, threadId?: number, force = false) { + public readHistory(peerId: PeerId, maxId = 0, threadId?: number, force = false) { if(DO_NOT_READ_HISTORY) { return Promise.resolve(); } @@ -3757,14 +3851,14 @@ export class AppMessagesManager { apiUpdatesManager.processLocalUpdate({ _: 'updateReadChannelDiscussionInbox', - channel_id: -peerId, + channel_id: peerId.toChatId(), top_msg_id: threadId, read_max_id: maxId }); } else if(appPeersManager.isChannel(peerId)) { if(!historyStorage.readPromise) { apiPromise = apiManager.invokeApi('channels.readHistory', { - channel: appChatsManager.getChannelInput(-peerId), + channel: appChatsManager.getChannelInput(peerId.toChatId()), max_id: appMessagesIdsManager.getServerMessageId(maxId) }); } @@ -3772,7 +3866,7 @@ export class AppMessagesManager { apiUpdatesManager.processLocalUpdate({ _: 'updateReadChannelInbox', max_id: maxId, - channel_id: -peerId, + channel_id: peerId.toChatId(), still_unread_count: undefined, pts: undefined }); @@ -3825,14 +3919,21 @@ export class AppMessagesManager { return historyStorage.readPromise = apiPromise; } - public readAllHistory(peerId: number, threadId?: number, force = false) { + public readAllHistory(peerId: PeerId, threadId?: number, force = false) { const historyStorage = this.getHistoryStorage(peerId, threadId); if(historyStorage.maxId) { this.readHistory(peerId, historyStorage.maxId, threadId, force); // lol } } - public modifyCachedMentions(peerId: number, mid: number, add: boolean) { + public fixDialogUnreadMentionsIfNoMessage(peerId: PeerId) { + const dialog = this.getDialogOnly(peerId); + if(dialog?.unread_mentions_count) { + this.reloadConversation(peerId); + } + } + + public modifyCachedMentions(peerId: PeerId, mid: number, add: boolean) { const slicedArray = this.unreadMentions[peerId]; if(!slicedArray) return; @@ -3845,7 +3946,7 @@ export class AppMessagesManager { } } - public goToNextMention(peerId: number) { + public goToNextMention(peerId: PeerId) { /* this.getUnreadMentions(peerId, 1, 2, 0).then(messages => { console.log(messages); }); */ @@ -3879,7 +3980,7 @@ export class AppMessagesManager { }); } - public loadNextMentions(peerId: number) { + public loadNextMentions(peerId: PeerId) { const slicedArray = this.unreadMentions[peerId]; const maxId = slicedArray.first[0] || 1; @@ -3891,7 +3992,7 @@ export class AppMessagesManager { }); } - public getUnreadMentions(peerId: number, offsetId: number, add_offset: number, limit: number, maxId = 0, minId = 0) { + public getUnreadMentions(peerId: PeerId, offsetId: number, add_offset: number, limit: number, maxId = 0, minId = 0) { return apiManager.invokeApiSingle('messages.getUnreadMentions', { peer: appPeersManager.getInputPeerById(peerId), offset_id: appMessagesIdsManager.getServerMessageId(offsetId), @@ -3909,7 +4010,7 @@ export class AppMessagesManager { }); } - public readMessages(peerId: number, msgIds: number[]) { + public readMessages(peerId: PeerId, msgIds: number[]) { if(DO_NOT_READ_HISTORY) { return Promise.resolve(); } @@ -3920,8 +4021,8 @@ export class AppMessagesManager { msgIds = msgIds.map(mid => appMessagesIdsManager.getServerMessageId(mid)); let promise: Promise, update: Update.updateChannelReadMessagesContents | Update.updateReadMessagesContents; - if(peerId < 0 && appPeersManager.isChannel(peerId)) { - const channelId = -peerId; + if(peerId.isAnyChat() && appPeersManager.isChannel(peerId)) { + const channelId = peerId.toChatId(); update = { _: 'updateChannelReadMessagesContents', @@ -3955,7 +4056,7 @@ export class AppMessagesManager { return promise; } - public getHistoryStorage(peerId: number, threadId?: number) { + public getHistoryStorage(peerId: PeerId, threadId?: number) { if(threadId) { //threadId = this.getLocalMessageId(threadId); if(!this.threadsStorage[peerId]) this.threadsStorage[peerId] = {}; @@ -3973,8 +4074,7 @@ export class AppMessagesManager { //const timeout = 1000; for(const _peerId in this.notificationsToHandle) { - const peerId = +_peerId; - + const peerId = _peerId.toPeerId(); if(rootScope.peerId === peerId && !rootScope.idle.isIDLE) { continue; } @@ -4010,7 +4110,6 @@ export class AppMessagesManager { //this.log('AMM updateMessageID:', update, pendingData); if(pendingData) { const {peerId, tempId, threadId, storage} = pendingData; - //const mid = update.id; const mid = appMessagesIdsManager.generateMessageId(update.id); const message = this.getMessageFromStorage(storage, mid); if(!message.deleted) { @@ -4020,7 +4119,7 @@ export class AppMessagesManager { storage.history.delete(tempId); }); - this.finalizePendingMessageCallbacks(storage, tempId, mid); + this.finalizePendingMessageCallbacks(storage, tempId, message); } else { this.pendingByMessageId[mid] = randomId; } @@ -4052,8 +4151,8 @@ export class AppMessagesManager { if(!dialog && !isLocalThreadUpdate) { let good = true; - if(peerId < 0) { - good = appChatsManager.isInChat(-peerId); + if(peerId.isAnyChat()) { + good = appChatsManager.isInChat(peerId.toChatId()); } if(good) { @@ -4071,7 +4170,7 @@ export class AppMessagesManager { } /* if(update._ === 'updateNewChannelMessage') { - const chat = appChatsManager.getChat(-peerId); + const chat = appChatsManager.getChat(peerId.toChatId()); if(chat.pFlags && (chat.pFlags.left || chat.pFlags.kicked)) { return; } @@ -4119,7 +4218,7 @@ export class AppMessagesManager { } const fromId = message.fromId; - if(fromId > 0 && !message.pFlags.out && message.from_id) { + if(fromId.isUser() && !message.pFlags.out && message.from_id) { appUsersManager.forceUserOnline(fromId, message.date); const action: SendMessageAction = { @@ -4127,7 +4226,7 @@ export class AppMessagesManager { }; let update: Update.updateUserTyping | Update.updateChatUserTyping | Update.updateChannelUserTyping; - if(peerId > 0) { + if(peerId.isUser()) { update = { _: 'updateUserTyping', action, @@ -4137,7 +4236,7 @@ export class AppMessagesManager { update = { _: 'updateChannelUserTyping', action, - channel_id: -peerId, + channel_id: peerId.toChatId(), from_id: appPeersManager.getOutputPeer(fromId), top_msg_id: threadId ? appMessagesIdsManager.getServerMessageId(threadId) : undefined }; @@ -4145,7 +4244,7 @@ export class AppMessagesManager { update = { _: 'updateChatUserTyping', action, - chat_id: -peerId, + chat_id: peerId.toChatId(), from_id: appPeersManager.getOutputPeer(fromId) }; } @@ -4164,12 +4263,15 @@ export class AppMessagesManager { const inboxUnread = !message.pFlags.out && message.pFlags.unread; if(dialog) { if(inboxUnread) { - ++dialog.unread_count; + const releaseUnreadCount = this.dialogsStorage.prepareDialogUnreadCountModifying(dialog); + ++dialog.unread_count; if(message.pFlags.mentioned) { ++dialog.unread_mentions_count; this.modifyCachedMentions(peerId, message.mid, true); } + + releaseUnreadCount(); } this.setDialogTopMessage(message, dialog); @@ -4181,7 +4283,7 @@ export class AppMessagesManager { if(notifyPeerToHandle === undefined) { notifyPeerToHandle = this.notificationsToHandle[notifyPeer] = { fwdCount: 0, - fromId: 0 + fromId: NULL_PEER_ID }; } @@ -4210,12 +4312,15 @@ export class AppMessagesManager { if(!dialog) { this.scheduleHandleNewDialogs(peerId); } else { + const releaseUnreadCount = this.dialogsStorage.prepareDialogUnreadCountModifying(dialog); + if(!update.pFlags.unread) { delete dialog.pFlags.unread_mark; } else { dialog.pFlags.unread_mark = true; } + releaseUnreadCount(); rootScope.dispatchEvent('dialogs_multiupdate', {[peerId]: dialog}); this.dialogsStorage.setDialogToState(dialog); } @@ -4227,18 +4332,26 @@ export class AppMessagesManager { const mid = appMessagesIdsManager.generateMessageId(message.id); const storage = this.getMessagesStorage(peerId); if(!storage.has(mid)) { + // this.fixDialogUnreadMentionsIfNoMessage(peerId); return; } // console.trace(dT(), 'edit message', message) - const oldMessage = this.getMessageFromStorage(storage, mid); + const oldMessage: Message = this.getMessageFromStorage(storage, mid); this.saveMessages([message], {storage}); - const newMessage = this.getMessageFromStorage(storage, mid); + const newMessage: Message = this.getMessageFromStorage(storage, mid); this.handleEditedMessage(oldMessage, newMessage); const dialog = this.getDialogOnly(peerId); + + // if sender erased mention + /* if(dialog.unread_mentions_count && (oldMessage as Message.message)?.pFlags?.mentioned && !message.pFlags.mentioned) { + --dialog.unread_mentions_count; + this.modifyCachedMentions(peerId, mid, false); + } */ + const isTopMessage = dialog && dialog.top_message === mid; if((message as Message.message).clear_history) { if(isTopMessage) { @@ -4252,7 +4365,7 @@ export class AppMessagesManager { }); if(isTopMessage || (message as Message.message).grouped_id) { - const updatedDialogs: {[peerId: number]: Dialog} = {}; + const updatedDialogs: {[peerId: PeerId]: Dialog} = {}; updatedDialogs[peerId] = dialog; rootScope.dispatchEvent('dialogs_multiupdate', updatedDialogs); this.dialogsStorage.setDialogToState(dialog); @@ -4266,7 +4379,7 @@ export class AppMessagesManager { const channelId = (update as Update.updateReadChannelInbox).channel_id; const maxId = appMessagesIdsManager.generateMessageId((update as Update.updateReadChannelInbox).max_id || (update as Update.updateReadChannelDiscussionInbox).read_max_id); const threadId = appMessagesIdsManager.generateMessageId((update as Update.updateReadChannelDiscussionInbox).top_msg_id); - const peerId = channelId ? -channelId : appPeersManager.getPeerId((update as Update.updateReadHistoryInbox).peer); + const peerId = channelId ? channelId.toPeerId(true) : appPeersManager.getPeerId((update as Update.updateReadHistoryInbox).peer); const isOut = update._ === 'updateReadHistoryOutbox' || update._ === 'updateReadChannelOutbox' || update._ === 'updateReadChannelDiscussionOutbox' ? true : undefined; @@ -4282,18 +4395,20 @@ export class AppMessagesManager { const historyStorage = this.getHistoryStorage(peerId, threadId); - if(peerId > 0 && isOut) { + if(peerId.isUser() && isOut) { appUsersManager.forceUserOnline(peerId); } if(threadId) { const repliesKey = this.threadsToReplies[peerId + '_' + threadId]; if(repliesKey) { - const [peerId, mid] = repliesKey.split('_').map(n => +n); - this.updateMessage(peerId, mid, 'replies_updated'); + const [peerId, mid] = repliesKey.split('_'); + this.updateMessage(peerId.toPeerId(), +mid, 'replies_updated'); } } + const releaseUnreadCount = !threadId && foundDialog && this.dialogsStorage.prepareDialogUnreadCountModifying(foundDialog); + for(let i = 0, length = history.length; i < length; i++) { const mid = history[i]; if(mid > maxId) { @@ -4347,18 +4462,29 @@ export class AppMessagesManager { else foundDialog.read_inbox_max_id = maxId; if(!isOut) { + let setCount: number; if(stillUnreadCount !== undefined) { - foundDialog.unread_count = stillUnreadCount; + setCount = stillUnreadCount; } else if(newUnreadCount < 0 || !this.getReadMaxIdIfUnread(peerId)) { - foundDialog.unread_count = 0; + setCount = 0; } else if(newUnreadCount && foundDialog.top_message > maxId) { - foundDialog.unread_count = newUnreadCount; + setCount = newUnreadCount; + } + + if(setCount !== undefined) { + foundDialog.unread_count = setCount; } if(newUnreadMentionsCount < 0) { foundDialog.unread_mentions_count = 0; } } + + if(releaseUnreadCount) { + releaseUnreadCount(); + } + + this.dialogsStorage.processDialogForFilters(foundDialog); rootScope.dispatchEvent('dialog_unread', {peerId}); this.dialogsStorage.setDialogToState(foundDialog); @@ -4372,8 +4498,8 @@ export class AppMessagesManager { const threadKeyPart = peerId + '_'; for(const threadKey in this.threadsToReplies) { if(threadKey.indexOf(threadKeyPart) === 0) { - const [peerId, mid] = this.threadsToReplies[threadKey].split('_').map(n => +n); - rootScope.dispatchEvent('replies_updated', this.getMessageByPeer(peerId, mid)); + const [peerId, mid] = this.threadsToReplies[threadKey].split('_'); + rootScope.dispatchEvent('replies_updated', this.getMessageByPeer(peerId.toPeerId(), +mid)); } } } @@ -4382,17 +4508,21 @@ export class AppMessagesManager { private onUpdateReadMessagesContents = (update: Update.updateChannelReadMessagesContents | Update.updateReadMessagesContents) => { const channelId = (update as Update.updateChannelReadMessagesContents).channel_id; const mids = (update as Update.updateReadMessagesContents).messages.map(id => appMessagesIdsManager.generateMessageId(id)); - const peerId = channelId ? -channelId : this.getMessageById(mids[0]).peerId; + const peerId = channelId ? channelId.toPeerId(true) : this.getMessageById(mids[0]).peerId; for(let i = 0, length = mids.length; i < length; ++i) { const mid = mids[i]; const message: MyMessage = this.getMessageByPeer(peerId, mid); - if(!message.deleted && message.pFlags.media_unread) { - delete message.pFlags.media_unread; - this.setDialogToStateIfMessageIsTop(message); - - if(!message.pFlags.out && message.pFlags.mentioned) { - this.modifyCachedMentions(peerId, mid, false); + if(!message.deleted) { + if(message.pFlags.media_unread) { + delete message.pFlags.media_unread; + this.setDialogToStateIfMessageIsTop(message); + + if(!message.pFlags.out && message.pFlags.mentioned) { + this.modifyCachedMentions(peerId, mid, false); + } } + } else { + this.fixDialogUnreadMentionsIfNoMessage(peerId); } } @@ -4400,7 +4530,7 @@ export class AppMessagesManager { }; private onUpdateChannelAvailableMessages = (update: Update.updateChannelAvailableMessages) => { - const peerId: number = -update.channel_id; + const peerId = update.channel_id.toPeerId(true); const history = this.getHistoryStorage(peerId).history.slice; const availableMinId = appMessagesIdsManager.generateMessageId(update.available_min_id); const messages = history.filter(mid => mid <= availableMinId); @@ -4410,10 +4540,10 @@ export class AppMessagesManager { }; private onUpdateDeleteMessages = (update: Update.updateDeleteMessages | Update.updateDeleteChannelMessages) => { - const channelId: number = (update as Update.updateDeleteChannelMessages).channel_id; + const channelId = (update as Update.updateDeleteChannelMessages).channel_id; //const messages = (update as any as Update.updateDeleteChannelMessages).messages; const messages = (update as any as Update.updateDeleteChannelMessages).messages.map(id => appMessagesIdsManager.generateMessageId(id)); - const peerId: number = channelId ? -channelId : this.getMessageById(messages[0]).peerId; + const peerId: PeerId = channelId ? channelId.toPeerId(true) : this.getMessageById(messages[0]).peerId; if(!peerId) { return; @@ -4435,8 +4565,8 @@ export class AppMessagesManager { const historyUpdated = this.handleDeletedMessages(peerId, this.getMessagesStorage(peerId), messages); const threadsStorages = Array.from(threadKeys).map(threadKey => { - const splitted = threadKey.split('_'); - return this.getHistoryStorage(+splitted[0], +splitted[1]); + const [peerId, mid] = threadKey.split('_'); + return this.getHistoryStorage(peerId.toPeerId(), +mid); }); const historyStorage = this.getHistoryStorage(peerId); @@ -4454,15 +4584,19 @@ export class AppMessagesManager { const foundDialog = this.getDialogOnly(peerId); if(foundDialog) { + const affected = historyUpdated.unreadMentions || historyUpdated.unread; + const releaseUnreadCount = affected && this.dialogsStorage.prepareDialogUnreadCountModifying(foundDialog); + if(historyUpdated.unreadMentions) { foundDialog.unread_mentions_count = Math.max(0, foundDialog.unread_mentions_count - historyUpdated.unreadMentions); } if(historyUpdated.unread) { - foundDialog.unread_count -= historyUpdated.unread; + foundDialog.unread_count = Math.max(0, foundDialog.unread_count - historyUpdated.unread); } - if(historyUpdated.unreadMentions || historyUpdated.unread) { + if(affected) { + releaseUnreadCount(); rootScope.dispatchEvent('dialog_unread', {peerId}); } @@ -4480,8 +4614,8 @@ export class AppMessagesManager { }; private onUpdateChannel = (update: Update.updateChannel) => { - const channelId: number = update.channel_id; - const peerId = -channelId; + const channelId = update.channel_id; + const peerId = channelId.toPeerId(true); const channel: Chat.channel = appChatsManager.getChat(channelId); const needDialog = appChatsManager.isInChat(channelId); @@ -4508,7 +4642,7 @@ export class AppMessagesManager { }; private onUpdateChannelReload = (update: Update.updateChannelReload) => { - const peerId = update.channel_id; + const peerId = update.channel_id.toPeerId(true); this.dialogsStorage.dropDialog(peerId); @@ -4520,12 +4654,13 @@ export class AppMessagesManager { private onUpdateChannelMessageViews = (update: Update.updateChannelMessageViews) => { const views = update.views; - const peerId = -update.channel_id; + const peerId = update.channel_id.toPeerId(true); const mid = appMessagesIdsManager.generateMessageId(update.id); const message: Message.message = this.getMessageByPeer(peerId, mid); if(!message.deleted && message.views !== undefined && message.views < views) { message.views = views; rootScope.dispatchEvent('message_views', {peerId, mid, views}); + this.setDialogToStateIfMessageIsTop(message); } }; @@ -4561,14 +4696,16 @@ export class AppMessagesManager { this.pendingTopMsgs[peerId] = messageId; this.onUpdateNewMessage({ _: 'updateNewMessage', - message - } as any); + message, + pts: undefined, + pts_count: undefined + }); } }; private onUpdatePinnedMessages = (update: Update.updatePinnedMessages | Update.updatePinnedChannelMessages) => { const channelId = update._ === 'updatePinnedChannelMessages' ? update.channel_id : undefined; - const peerId = channelId ? -channelId : appPeersManager.getPeerId((update as Update.updatePinnedMessages).peer); + const peerId = channelId ? channelId.toPeerId(true) : appPeersManager.getPeerId((update as Update.updatePinnedMessages).peer); /* const storage = this.getSearchStorage(peerId, 'inputMessagesFilterPinned'); if(storage.count !== storage.history.length) { @@ -4684,9 +4821,9 @@ export class AppMessagesManager { if(threadKey) { const repliesKey = this.threadsToReplies[threadKey]; if(repliesKey) { - const [peerId, mid] = repliesKey.split('_').map(n => +n); + const [peerId, mid] = repliesKey.split('_'); - this.updateMessage(peerId, mid, 'replies_updated'); + this.updateMessage(peerId.toPeerId(), +mid, 'replies_updated'); } } } catch(err) { @@ -4696,7 +4833,7 @@ export class AppMessagesManager { private getThreadKey(threadMessage: MyMessage) { let threadKey = ''; - if(threadMessage.peerId < 0 && threadMessage.reply_to) { + if(threadMessage.peerId?.isAnyChat() && threadMessage.reply_to) { const threadId = threadMessage.reply_to.reply_to_top_id || threadMessage.reply_to.reply_to_msg_id; threadKey = threadMessage.peerId + '_' + threadId; } @@ -4704,7 +4841,7 @@ export class AppMessagesManager { return threadKey; } - public updateMessage(peerId: number, mid: number, broadcastEventName?: 'replies_updated'): Promise { + public updateMessage(peerId: PeerId, mid: number, broadcastEventName?: 'replies_updated'): Promise { const promise: Promise = this.wrapSingleMessage(peerId, mid, true).then(() => { const message = this.getMessageByPeer(peerId, mid); @@ -4733,7 +4870,7 @@ export class AppMessagesManager { return pendingMessage; } - public mutePeer(peerId: number, mute?: boolean) { + public mutePeer(peerId: PeerId, mute?: boolean) { const settings: InputPeerNotifySettings = { _: 'inputPeerNotifySettings' }; @@ -4750,18 +4887,18 @@ export class AppMessagesManager { }, settings); } - public canSendToPeer(peerId: number, threadId?: number, action: ChatRights = 'send_messages') { - if(peerId < 0) { + public canSendToPeer(peerId: PeerId, threadId?: number, action: ChatRights = 'send_messages') { + if(peerId.isAnyChat()) { //const isChannel = appPeersManager.isChannel(peerId); - const chat: Chat.chat = appChatsManager.getChat(-peerId); - const hasRights = /* isChannel && */appChatsManager.hasRights(-peerId, action, undefined, !!threadId); + const chat: Chat.chat = appChatsManager.getChat(peerId.toChatId()); + const hasRights = /* isChannel && */appChatsManager.hasRights(peerId.toChatId(), action, undefined, !!threadId); return /* !isChannel || */hasRights && (!chat.pFlags.left || !!threadId); } else { return appUsersManager.canSendToUser(peerId); } } - public finalizePendingMessage(randomId: string, finalMessage: MyMessage) { + public finalizePendingMessage(randomId: Long, finalMessage: MyMessage) { const pendingData = this.pendingByRandomId[randomId]; // this.log('pdata', randomID, pendingData) @@ -4776,29 +4913,26 @@ export class AppMessagesManager { // this.log('pending', randomID, historyStorage.pending) - const message: Message.message = this.getMessageFromStorage(storage, tempId); - if(!message.deleted) { - delete message.pFlags.is_outgoing; - delete message.pending; - delete message.error; - delete message.random_id; - delete message.send; - - rootScope.dispatchEvent('messages_pending'); + const tempMessage: MyMessage = this.getMessageFromStorage(storage, tempId); + if(!tempMessage.deleted) { + delete finalMessage.pFlags.is_outgoing; + delete finalMessage.pending; + delete finalMessage.error; + delete finalMessage.random_id; + delete finalMessage.send; } + + rootScope.dispatchEvent('messages_pending'); delete this.pendingByRandomId[randomId]; - this.finalizePendingMessageCallbacks(storage, tempId, finalMessage.mid); + this.finalizePendingMessageCallbacks(storage, tempId, finalMessage); - return message; + return tempMessage; } - - return false; } - public finalizePendingMessageCallbacks(storage: MessagesStorage, tempId: number, mid: number) { - const message: Message.message = this.getMessageFromStorage(storage, mid); + public finalizePendingMessageCallbacks(storage: MessagesStorage, tempId: number, message: MyMessage) { const callbacks = this.tempFinalizeCallbacks[tempId]; //this.log.warn(callbacks, tempId); if(callbacks !== undefined) { @@ -4812,7 +4946,7 @@ export class AppMessagesManager { } // set cached url to media - if(message.media) { + if('media' in message) { const {photo: newPhoto, document: newDoc} = message.media as any; if(newPhoto) { const photo = appPhotosManager.getPhoto('' + tempId); @@ -4851,7 +4985,7 @@ export class AppMessagesManager { this.handleReleasingMessage(tempMessage, storage); - rootScope.dispatchEvent('message_sent', {storage, tempId, tempMessage, mid, message}); + rootScope.dispatchEvent('message_sent', {storage, tempId, tempMessage, mid: message.mid, message}); } public incrementMaxSeenId(maxId: number) { @@ -4867,7 +5001,7 @@ export class AppMessagesManager { }); } - public incrementMessageViews(peerId: number, mids: number[]) { + public incrementMessageViews(peerId: PeerId, mids: number[]) { if(!mids.length) { return; } @@ -4878,7 +5012,7 @@ export class AppMessagesManager { increment: true }).then(views => { const updates: Update[] = new Array(mids.length); - const channelId = -peerId; + const channelId = peerId.toChatId(); for(let i = 0, length = mids.length; i < length; ++i) { updates[i] = { _: 'updateChannelMessageViews', @@ -4917,7 +5051,7 @@ export class AppMessagesManager { } notification.title = appPeersManager.getPeerTitle(peerId, true); - if(peerId < 0 && message.fromId !== message.peerId) { + if(peerId.isAnyChat() && message.fromId !== message.peerId) { notification.title = appPeersManager.getPeerTitle(message.fromId, true) + ' @ ' + notification.title; @@ -4947,15 +5081,15 @@ export class AppMessagesManager { } } - public getScheduledMessagesStorage(peerId: number) { + public getScheduledMessagesStorage(peerId: PeerId) { return this.scheduledMessagesStorage[peerId] ?? (this.scheduledMessagesStorage[peerId] = this.createMessageStorage()); } - public getScheduledMessageByPeer(peerId: number, mid: number) { + public getScheduledMessageByPeer(peerId: PeerId, mid: number) { return this.getMessageFromStorage(this.getScheduledMessagesStorage(peerId), mid); } - public getScheduledMessages(peerId: number): Promise { + public getScheduledMessages(peerId: PeerId): Promise { if(!this.canSendToPeer(peerId)) return Promise.resolve([]); const storage = this.getScheduledMessagesStorage(peerId); @@ -4965,7 +5099,7 @@ export class AppMessagesManager { return apiManager.invokeApiSingle('messages.getScheduledHistory', { peer: appPeersManager.getInputPeerById(peerId), - hash: 0 + hash: '' }).then(historyResult => { if(historyResult._ !== 'messages.messagesNotModified') { appUsersManager.saveApiUsers(historyResult.users); @@ -4980,7 +5114,7 @@ export class AppMessagesManager { }); } - public sendScheduledMessages(peerId: number, mids: number[]) { + public sendScheduledMessages(peerId: PeerId, mids: number[]) { return apiManager.invokeApi('messages.sendScheduledMessages', { peer: appPeersManager.getInputPeerById(peerId), id: mids.map(mid => appMessagesIdsManager.getServerMessageId(mid)) @@ -4989,7 +5123,7 @@ export class AppMessagesManager { }); } - public deleteScheduledMessages(peerId: number, mids: number[]) { + public deleteScheduledMessages(peerId: PeerId, mids: number[]) { return apiManager.invokeApi('messages.deleteScheduledMessages', { peer: appPeersManager.getInputPeerById(peerId), id: mids.map(mid => appMessagesIdsManager.getServerMessageId(mid)) @@ -5001,7 +5135,7 @@ export class AppMessagesManager { public getMessageWithReplies(message: Message.message) { if(message.peerId !== REPLIES_PEER_ID) { message = this.filterMessages(message, message => !!(message as Message.message).replies)[0] as any; - if(!(message && message.replies && message.replies.pFlags.comments && message.replies.channel_id !== 777)) { + if(!(message && message.replies && message.replies.pFlags.comments && message.replies.channel_id !== '777')) { return; } } @@ -5009,11 +5143,11 @@ export class AppMessagesManager { return message; } - public isFetchIntervalNeeded(peerId: number) { - return peerId < 0 && !appChatsManager.isInChat(peerId); + public isFetchIntervalNeeded(peerId: PeerId) { + return peerId.isAnyChat() && !appChatsManager.isInChat(peerId.toChatId()); } - public async getNewHistory(peerId: number, threadId?: number) { + public async getNewHistory(peerId: PeerId, threadId?: number) { if(!this.isFetchIntervalNeeded(peerId)) { return; } @@ -5043,7 +5177,7 @@ export class AppMessagesManager { /** * * https://core.telegram.org/api/offsets, offset_id is inclusive */ - public getHistory(peerId: number, maxId = 0, limit: number, backLimit?: number, threadId?: number): Promise | HistoryResult { + public getHistory(peerId: PeerId, maxId = 0, limit: number, backLimit?: number, threadId?: number): Promise | HistoryResult { const historyStorage = this.getHistoryStorage(peerId, threadId); let offset = 0; @@ -5170,7 +5304,7 @@ export class AppMessagesManager { return {slice, mids, messages, ...isEnd}; } - public fillHistoryStorage(peerId: number, offset_id: number, limit: number, add_offset: number, historyStorage: HistoryStorage, threadId?: number): Promise { + public fillHistoryStorage(peerId: PeerId, offset_id: number, limit: number, add_offset: number, historyStorage: HistoryStorage, threadId?: number): Promise { return this.requestHistory(peerId, offset_id, limit, add_offset, undefined, threadId).then((historyResult) => { const {count, isBottomEnd, slice, messages} = this.mergeHistoryResult(historyStorage.history, historyResult, offset_id, limit, add_offset); @@ -5230,7 +5364,7 @@ export class AppMessagesManager { }); } - public requestHistory(peerId: number, maxId: number, limit = 0, offset = 0, offsetDate = 0, threadId = 0): Promise> { + public requestHistory(peerId: PeerId, maxId: number, limit = 0, offset = 0, offsetDate = 0, threadId = 0): Promise> { //console.trace('requestHistory', peerId, maxId, limit, offset); //rootScope.broadcast('history_request'); @@ -5265,7 +5399,7 @@ export class AppMessagesManager { this.saveMessages(historyResult.messages); if(appPeersManager.isChannel(peerId)) { - apiUpdatesManager.addChannelState(-peerId, (historyResult as MessagesMessages.messagesChannelMessages).pts); + apiUpdatesManager.addChannelState(peerId.toChatId(), (historyResult as MessagesMessages.messagesChannelMessages).pts); } let length = historyResult.messages.length, count = (historyResult as MessagesMessages.messagesMessagesSlice).count; @@ -5292,13 +5426,13 @@ export class AppMessagesManager { }, (error) => { switch (error.type) { case 'CHANNEL_PRIVATE': - let channel = appChatsManager.getChat(-peerId); + let channel = appChatsManager.getChat(peerId.toChatId()); channel = {_: 'channelForbidden', access_hash: channel.access_hash, title: channel.title}; apiUpdatesManager.processUpdateMessage({ _: 'updates', updates: [{ _: 'updateChannel', - channel_id: -peerId + channel_id: peerId.toChatId() }], chats: [channel], users: [] @@ -5317,23 +5451,22 @@ export class AppMessagesManager { return this.fetchSingleMessagesPromise = new Promise((resolve) => { setTimeout(() => { - let promises: Promise[] = []; + const requestPromises: Promise[] = []; - for(const peerId in this.needSingleMessages) { - const mids = this.needSingleMessages[peerId]; - delete this.needSingleMessages[peerId]; - - const msgIds: InputMessage[] = mids.map((msgId: number) => { + for(const [peerId, map] of this.needSingleMessages) { + const mids = [...map.keys()]; + const promises = [...map.values()]; + const msgIds: InputMessage[] = mids.map((mid) => { return { _: 'inputMessageID', - id: appMessagesIdsManager.getServerMessageId(msgId) + id: appMessagesIdsManager.getServerMessageId(mid) }; }); let promise: Promise; - if(+peerId < 0 && appPeersManager.isChannel(+peerId)) { + if(peerId.isAnyChat() && appPeersManager.isChannel(peerId)) { promise = apiManager.invokeApiSingle('channels.getMessages', { - channel: appChatsManager.getChannelInput(-+peerId), + channel: appChatsManager.getChannelInput(peerId.toChatId()), id: msgIds }); } else { @@ -5343,19 +5476,26 @@ export class AppMessagesManager { } const after = promise.then(getMessagesResult => { - if(getMessagesResult._ !== 'messages.messagesNotModified') { - appUsersManager.saveApiUsers(getMessagesResult.users); - appChatsManager.saveApiChats(getMessagesResult.chats); - this.saveMessages(getMessagesResult.messages); + assumeType>(getMessagesResult); + + appUsersManager.saveApiUsers(getMessagesResult.users); + appChatsManager.saveApiChats(getMessagesResult.chats); + this.saveMessages(getMessagesResult.messages); + + for(let i = 0; i < getMessagesResult.messages.length; ++i) { + const promise = promises[i]; + promise.resolve(getMessagesResult.messages[i]); } }).finally(() => { - rootScope.dispatchEvent('messages_downloaded', {peerId: +peerId, mids}); + rootScope.dispatchEvent('messages_downloaded', {peerId, mids}); }); - promises.push(after); + requestPromises.push(after); } - Promise.all(promises).finally(() => { + this.needSingleMessages.clear(); + + Promise.all(requestPromises).finally(() => { this.fetchSingleMessagesPromise = null; if(Object.keys(this.needSingleMessages).length) this.fetchSingleMessages(); resolve(); @@ -5364,19 +5504,30 @@ export class AppMessagesManager { }); } - public wrapSingleMessage(peerId: number, msgId: number, overwrite = false): Promise { - if(!this.getMessageByPeer(peerId, msgId).deleted && !overwrite) { - rootScope.dispatchEvent('messages_downloaded', {peerId, mids: [msgId]}); - return Promise.resolve(); - } else if(!this.needSingleMessages[peerId] || this.needSingleMessages[peerId].indexOf(msgId) === -1) { - (this.needSingleMessages[peerId] ?? (this.needSingleMessages[peerId] = [])).push(msgId); - return this.fetchSingleMessages(); - } else if(this.fetchSingleMessagesPromise) { - return this.fetchSingleMessagesPromise; + public wrapSingleMessage(peerId: PeerId, mid: number, overwrite = false): Promise { + const message = this.getMessageByPeer(peerId, mid); + if(!message.deleted && !overwrite) { + rootScope.dispatchEvent('messages_downloaded', {peerId, mids: [mid]}); + return Promise.resolve(message); + } else { + let map = this.needSingleMessages.get(peerId); + if(!map) { + this.needSingleMessages.set(peerId, map = new Map()); + } + + let promise = map.get(mid); + if(promise) { + return promise; + } + + promise = deferredPromise(); + map.set(mid, promise); + this.fetchSingleMessages(); + return promise; } } - public setTyping(peerId: number, action: SendMessageAction): Promise { + public setTyping(peerId: PeerId, action: SendMessageAction): Promise { let typing = this.typings[peerId]; if(!rootScope.myId || !peerId || @@ -5429,7 +5580,7 @@ export class AppMessagesManager { } } - private handleDeletedMessages(peerId: number, storage: MessagesStorage, messages: number[]) { + private handleDeletedMessages(peerId: PeerId, storage: MessagesStorage, messages: number[]) { const history: { count: number, unread: number, @@ -5445,7 +5596,10 @@ export class AppMessagesManager { for(const mid of messages) { const message: MyMessage = this.getMessageFromStorage(storage, mid); - if(message.deleted) continue; + if(message.deleted) { + this.fixDialogUnreadMentionsIfNoMessage(peerId); + continue; + } this.handleReleasingMessage(message, storage); @@ -5504,9 +5658,12 @@ export class AppMessagesManager { return history; } - private handleEditedMessage(oldMessage: any, newMessage: any) { - if(oldMessage.media?.webpage) { - appWebPagesManager.deleteWebPageFromPending(oldMessage.media.webpage, oldMessage.mid); + private handleEditedMessage(oldMessage: Message, newMessage: Message) { + if(oldMessage._ === 'message') { + if((oldMessage.media as MessageMedia.messageMediaWebPage)?.webpage) { + const messageKey = appWebPagesManager.getMessageKeyForPendingWebPage(oldMessage.peerId, oldMessage.mid, !!oldMessage.pFlags.is_scheduled); + appWebPagesManager.deleteWebPageFromPending((oldMessage.media as MessageMedia.messageMediaWebPage).webpage, messageKey); + } } } @@ -5533,6 +5690,14 @@ export class AppMessagesManager { !(['voice', 'round'] as MyDocument['type'][]).includes(doc.type) ); } + + public getDialogUnreadCount(dialog: Dialog) { + return dialog.unread_count || +!!dialog.pFlags.unread_mark; + } + + public isDialogUnread(dialog: Dialog) { + return !!this.getDialogUnreadCount(dialog); + } } const appMessagesManager = new AppMessagesManager(); diff --git a/src/lib/appManagers/appNotificationsManager.ts b/src/lib/appManagers/appNotificationsManager.ts index 0f68402f..1e4da054 100644 --- a/src/lib/appManagers/appNotificationsManager.ts +++ b/src/lib/appManagers/appNotificationsManager.ts @@ -56,7 +56,7 @@ export type NotificationSettings = { type ImSadAboutIt = Promise | PeerNotifySettings; export class AppNotificationsManager { private notificationsUiSupport: boolean; - private notificationsShown: {[key: string]: MyNotification} = {}; + private notificationsShown: {[key: string]: MyNotification | true} = {}; private notificationIndex = 0; private notificationsCount = 0; private soundsPlayed: {[tag: string]: number} = {}; @@ -64,7 +64,7 @@ export class AppNotificationsManager { private nextSoundAt: number; private prevSoundVolume: number; private peerSettings = { - notifyPeer: {} as {[peerId: number]: ImSadAboutIt}, + notifyPeer: {} as {[peerId: PeerId]: ImSadAboutIt}, notifyUsers: null as ImSadAboutIt, notifyChats: null as ImSadAboutIt, notifyBroadcasts: null as ImSadAboutIt @@ -126,7 +126,13 @@ export class AppNotificationsManager { rootScope.addMultipleEventsListeners({ updateNotifySettings: (update) => { - this.savePeerSettings(update.peer._ === 'notifyPeer' ? appPeersManager.getPeerId(update.peer.peer) : update.peer._, update.notify_settings); + const peerId = update.peer._ === 'notifyPeer' && appPeersManager.getPeerId(update.peer.peer); + const key = update.peer._ !== 'notifyPeer' ? update.peer._ : undefined; + this.savePeerSettings({ + key, + peerId, + settings: update.notify_settings + }); rootScope.dispatchEvent('notify_settings', update); } }); @@ -186,16 +192,16 @@ export class AppNotificationsManager { return; } - const peerId = notificationData.custom && +notificationData.custom.peerId; + const peerId = notificationData.custom && notificationData.custom.peerId.toPeerId(); console.log('click', notificationData, peerId); if(peerId) { this.topMessagesDeferred.then(() => { if(notificationData.custom.channel_id && - !appChatsManager.hasChat(+notificationData.custom.channel_id)) { + !appChatsManager.hasChat(notificationData.custom.channel_id)) { return; } - if(peerId > 0 && !appUsersManager.hasUser(peerId)) { + if(peerId.isUser() && !appUsersManager.hasUser(peerId)) { return; } @@ -224,13 +230,14 @@ export class AppNotificationsManager { resetTitle(); } else { this.titleInterval = window.setInterval(() => { - if(!this.notificationsCount) { + const count = this.notificationsCount; + if(!count) { this.toggleToggler(false); } else if(this.titleChanged) { resetTitle(); } else { this.titleChanged = true; - document.title = I18n.format('Notifications.Count', true, [this.notificationsCount]); + document.title = I18n.format('Notifications.Count', true, [count]); //this.setFavicon('assets/img/favicon_unread.ico'); // fetch('assets/img/favicon.ico') @@ -250,10 +257,10 @@ export class AppNotificationsManager { ctx.fill(); let fontSize = 24; - let str = '' + this.notificationsCount; - if(this.notificationsCount < 10) { + let str = '' + count; + if(count < 10) { fontSize = 22; - } else if(this.notificationsCount < 100) { + } else if(count < 100) { fontSize = 20; } else { str = '99+'; @@ -315,8 +322,9 @@ export class AppNotificationsManager { let key: any = convertInputKeyToKey(peer._); let obj: any = this.peerSettings[key as NotifyPeer['_']]; + let peerId: PeerId; if(peer._ === 'inputNotifyPeer') { - key = appPeersManager.getPeerId(peer.peer); + peerId = key = appPeersManager.getPeerId(peer.peer); obj = obj[key]; } @@ -326,7 +334,12 @@ export class AppNotificationsManager { return (obj || this.peerSettings)[key] = apiManager.invokeApi('account.getNotifySettings', {peer}) .then(settings => { - this.savePeerSettings(key, settings); + this.savePeerSettings({ + key, + peerId, + settings + }); + return settings; }); } @@ -400,15 +413,20 @@ export class AppNotificationsManager { this.prevFavicon = href; } - public savePeerSettings(key: number | Exclude, settings: PeerNotifySettings) { + public savePeerSettings({key, peerId, settings}: { + key?: Exclude, + peerId?: PeerId, + settings: PeerNotifySettings + }) { let obj: any; - if(typeof(key) === 'number') { + if(peerId) { + key = peerId as any; obj = this.peerSettings['notifyPeer']; } (obj || this.peerSettings)[key] = settings; - if(typeof(key) !== 'number') { + if(!peerId) { rootScope.dispatchEvent('notify_peer_type_settings', {key, settings}); } @@ -420,13 +438,13 @@ export class AppNotificationsManager { ((peerNotifySettings.mute_until * 1000) > tsNow() || peerNotifySettings.silent); } - public getPeerMuted(peerId: number) { + public getPeerMuted(peerId: PeerId) { const ret = this.getNotifySettings({_: 'inputNotifyPeer', peer: appPeersManager.getInputPeerById(peerId)}); return (ret instanceof Promise ? ret : Promise.resolve(ret)) .then((peerNotifySettings) => this.isMuted(peerNotifySettings)); } - public getPeerLocalSettings(peerId: number, respectType = true): PeerNotifySettings { + public getPeerLocalSettings(peerId: PeerId, respectType = true): PeerNotifySettings { const n: PeerNotifySettings = { _: 'peerNotifySettings' }; @@ -455,7 +473,7 @@ export class AppNotificationsManager { return n; } - public isPeerLocalMuted(peerId: number, respectType = true) { + public isPeerLocalMuted(peerId: PeerId, respectType = true) { if(peerId === rootScope.myId) return false; const notifySettings = this.getPeerLocalSettings(peerId, respectType); @@ -527,6 +545,10 @@ export class AppNotificationsManager { this.toggleToggler(); } + const idx = ++this.notificationIndex; + const key = data.key || 'k' + idx; + this.notificationsShown[key] = true; + const now = tsNow(); if(this.settings.volume > 0 && !this.settings.nosound/* && ( @@ -553,8 +575,6 @@ export class AppNotificationsManager { return; } - const idx = ++this.notificationIndex; - const key = data.key || 'k' + idx; let notification: MyNotification; if('Notification' in window) { @@ -562,8 +582,7 @@ export class AppNotificationsManager { if(data.tag) { for(let i in this.notificationsShown) { const notification = this.notificationsShown[i]; - if(notification && - notification.tag === data.tag) { + if(typeof(notification) !== 'boolean' && notification.tag === data.tag) { notification.hidden = true; } } @@ -651,18 +670,18 @@ export class AppNotificationsManager { const notification = this.notificationsShown[key]; if(notification) { if(this.notificationsCount > 0) { - this.notificationsCount--; + --this.notificationsCount; } try { - if(notification.close) { + if(typeof(notification) !== 'boolean' && notification.close) { notification.hidden = true; notification.close(); }/* else if(notificationsMsSiteMode && notification.index === notificationIndex) { window.external.msSiteModeClearIconOverlay() } */ - } catch (e) {} + } catch(e) {} delete this.notificationsShown[key]; } @@ -670,13 +689,13 @@ export class AppNotificationsManager { private hide(key: string) { const notification = this.notificationsShown[key]; - if(notification) { + if(notification && typeof(notification) !== 'boolean') { try { if(notification.close) { notification.hidden = true; notification.close(); } - } catch (e) {} + } catch(e) {} } } @@ -688,13 +707,13 @@ export class AppNotificationsManager { /* if(notificationsMsSiteMode) { window.external.msSiteModeClearIconOverlay() } else { */ - for(let i in this.notificationsShown) { + for(const i in this.notificationsShown) { const notification = this.notificationsShown[i]; try { - if(notification.close) { + if(typeof(notification) !== 'boolean' && notification.close) { notification.close(); } - } catch (e) {} + } catch(e) {} } /* } */ this.notificationsShown = {}; diff --git a/src/lib/appManagers/appPeersManager.ts b/src/lib/appManagers/appPeersManager.ts index 1cfeefa4..af5ed4f2 100644 --- a/src/lib/appManagers/appPeersManager.ts +++ b/src/lib/appManagers/appPeersManager.ts @@ -9,7 +9,7 @@ * https://github.com/zhukov/webogram/blob/master/LICENSE */ -import type { ChatPhoto, DialogPeer, InputDialogPeer, InputNotifyPeer, InputPeer, Peer, Update, UserProfilePhoto } from "../../layer"; +import type { Chat, ChatPhoto, DialogPeer, InputChannel, InputDialogPeer, InputNotifyPeer, InputPeer, Peer, Update, User, UserProfilePhoto } from "../../layer"; import type { LangPackKey } from "../langPack"; import { MOUNT_CLASS_TO } from "../../config/debug"; import { isObject } from "../../helpers/object"; @@ -37,29 +37,29 @@ const DialogColorsMap = [0, 7, 4, 1, 6, 3, 5]; export type PeerType = 'channel' | 'chat' | 'megagroup' | 'group' | 'saved'; export class AppPeersManager { - /* public savePeerInstance(peerId: number, instance: any) { + /* public savePeerInstance(peerId: PeerId, instance: any) { if(peerId < 0) appChatsManager.saveApiChat(instance); else appUsersManager.saveApiUser(instance); } */ - public canPinMessage(peerId: number) { - return peerId > 0 || appChatsManager.hasRights(-peerId, 'pin_messages'); + public canPinMessage(peerId: PeerId) { + return peerId.isUser() || appChatsManager.hasRights(peerId.toChatId(), 'pin_messages'); } - public getPeerPhoto(peerId: number): UserProfilePhoto.userProfilePhoto | ChatPhoto.chatPhoto { - const photo = peerId > 0 - ? appUsersManager.getUserPhoto(peerId) - : appChatsManager.getChatPhoto(-peerId); + public getPeerPhoto(peerId: PeerId): UserProfilePhoto.userProfilePhoto | ChatPhoto.chatPhoto { + const photo = peerId.isUser() + ? appUsersManager.getUserPhoto(peerId.toUserId()) + : appChatsManager.getChatPhoto(peerId.toChatId()); return photo._ !== 'chatPhotoEmpty' && photo._ !== 'userProfilePhotoEmpty' ? photo : null; } - public getPeerMigratedTo(peerId: number) { - if(peerId >= 0) { + public getPeerMigratedTo(peerId: PeerId) { + if(peerId.isUser()) { return false; } - let chat = appChatsManager.getChat(-peerId); + const chat: Chat.chat = appChatsManager.getChat(peerId.toChatId()); if(chat && chat.migrated_to && chat.pFlags.deactivated) { return this.getPeerId(chat.migrated_to); } @@ -67,25 +67,22 @@ export class AppPeersManager { return false; } - public getPeerTitle(peerId: number | any, plainText = false, onlyFirstName = false) { + public getPeerTitle(peerId: PeerId, plainText = false, onlyFirstName = false) { if(!peerId) { peerId = rootScope.myId; } - let peer: any = {}; - if(!isObject(peerId)) { - peer = this.getPeer(peerId); - } else peer = peerId; - let title = ''; - if(peerId > 0) { - if(peer.first_name) title += peer.first_name; - if(peer.last_name && (!onlyFirstName || !title)) title += ' ' + peer.last_name; + if(peerId.isUser()) { + const user = appUsersManager.getUser(peerId.toUserId()); + if(user.first_name) title += user.first_name; + if(user.last_name && (!onlyFirstName || !title)) title += ' ' + user.last_name; - if(!title) title = peer.pFlags.deleted ? I18n.format('HiddenName', true) : peer.username; + if(!title) title = user.pFlags.deleted ? I18n.format('HiddenName', true) : user.username; else title = title.trim(); } else { - title = peer.title; + const chat: Chat.chat = appChatsManager.getChat(peerId.toChatId()); + title = chat.title; if(onlyFirstName) { title = title.split(' ')[0]; @@ -94,13 +91,13 @@ export class AppPeersManager { return plainText ? title : RichTextProcessor.wrapEmojiText(title); } - - public getOutputPeer(peerId: number): Peer { - if(peerId > 0) { - return {_: 'peerUser', user_id: peerId}; + + public getOutputPeer(peerId: PeerId): Peer { + if(peerId.isUser()) { + return {_: 'peerUser', user_id: peerId.toUserId()}; } - let chatId = -peerId; + const chatId = peerId.toChatId(); if(appChatsManager.isChannel(chatId)) { return {_: 'peerChannel', channel_id: chatId}; } @@ -108,62 +105,78 @@ export class AppPeersManager { return {_: 'peerChat', chat_id: chatId}; } - public getPeerString(peerId: number) { - if(peerId > 0) { - return appUsersManager.getUserString(peerId); + public getPeerString(peerId: PeerId) { + if(peerId.isUser()) { + return appUsersManager.getUserString(peerId.toUserId()); } - return appChatsManager.getChatString(-peerId); + return appChatsManager.getChatString(peerId.toChatId()); } - public getPeerUsername(peerId: number): string { - if(peerId > 0) { - return appUsersManager.getUser(peerId).username || ''; - } - return appChatsManager.getChat(-peerId).username || ''; + public getPeerUsername(peerId: PeerId): string { + return this.getPeer(peerId).username || ''; } - public getPeer(peerId: number) { - return peerId > 0 - ? appUsersManager.getUser(peerId) - : appChatsManager.getChat(-peerId) + public getPeer(peerId: PeerId) { + return peerId.isUser() + ? appUsersManager.getUser(peerId.toUserId()) + : appChatsManager.getChat(peerId.toChatId()); } - public getPeerId(peerId: Peer | InputPeer | number | string): number { - if(typeof(peerId) === 'number') return peerId; - else if(isObject(peerId)) return (peerId as Peer.peerUser).user_id || -((peerId as Peer.peerChannel).channel_id || (peerId as Peer.peerChat).chat_id); - else if(!peerId) return 0; + public getPeerId(peerId: Peer | InputPeer | InputChannel | Update.updateUserTyping | Update.updateChatUserTyping | Update.updateChannelUserTyping | PeerId | string): PeerId { + if(peerId !== undefined && ((peerId as string).isPeerId ? (peerId as string).isPeerId() : false)) return peerId as PeerId; + // if(typeof(peerId) === 'string' && /^[uc]/.test(peerId)) return peerId as PeerId; + // if(typeof(peerId) === 'number') return peerId; + else if(isObject(peerId)) { + return (peerId as Peer.peerUser).user_id !== undefined ? + (peerId as Peer.peerUser).user_id.toPeerId() : + ((peerId as Peer.peerChannel).channel_id || (peerId as Peer.peerChat).chat_id).toPeerId(true); + // } else if(!peerId) return 'u0'; + } else if(!peerId) return 0; + // } else if(!peerId) return '0'; const isUser = (peerId as string).charAt(0) === 'u'; const peerParams = (peerId as string).substr(1).split('_'); - return isUser ? +peerParams[0] : -peerParams[0] || 0; + return isUser ? peerParams[0].toPeerId() : (peerParams[0] || '').toPeerId(true); } - public getDialogPeer(peerId: number): DialogPeer { + public getDialogPeer(peerId: PeerId): DialogPeer { return { _: 'dialogPeer', peer: this.getOutputPeer(peerId) }; } - public isChannel(peerId: number): boolean { - return (peerId < 0) && appChatsManager.isChannel(-peerId); + public isChannel(peerId: PeerId): boolean { + return !peerId.isUser() && appChatsManager.isChannel(peerId.toChatId()); } - public isMegagroup(peerId: number) { - return (peerId < 0) && appChatsManager.isMegagroup(-peerId); + public isMegagroup(peerId: PeerId) { + return !peerId.isUser() && appChatsManager.isMegagroup(peerId.toChatId()); } - public isAnyGroup(peerId: number): boolean { - return (peerId < 0) && !appChatsManager.isBroadcast(-peerId); + public isAnyGroup(peerId: PeerId): boolean { + return !peerId.isUser() && !appChatsManager.isBroadcast(peerId.toChatId()); } - public isBroadcast(peerId: number): boolean { + public isBroadcast(peerId: PeerId): boolean { return this.isChannel(peerId) && !this.isMegagroup(peerId); } - public isBot(peerId: number): boolean { - return (peerId > 0) && appUsersManager.isBot(peerId); + public isBot(peerId: PeerId): boolean { + return peerId.isUser() && appUsersManager.isBot(peerId.toUserId()); + } + + public isContact(peerId: PeerId): boolean { + return peerId.isUser() && appUsersManager.isContact(peerId.toUserId()); + } + + public isUser(peerId: PeerId)/* : peerId is UserId */ { + return +peerId >= 0; + } + + public isAnyChat(peerId: PeerId) { + return !this.isUser(peerId); } /* public getInputPeer(peerString: string): InputPeer { @@ -198,14 +211,14 @@ export class AppPeersManager { } } */ - public getInputNotifyPeerById(peerId: number, ignorePeerId: true): Exclude; - public getInputNotifyPeerById(peerId: number, ignorePeerId?: false): InputNotifyPeer.inputNotifyPeer; - public getInputNotifyPeerById(peerId: number, ignorePeerId?: boolean): InputNotifyPeer { + public getInputNotifyPeerById(peerId: PeerId, ignorePeerId: true): Exclude; + public getInputNotifyPeerById(peerId: PeerId, ignorePeerId?: false): InputNotifyPeer.inputNotifyPeer; + public getInputNotifyPeerById(peerId: PeerId, ignorePeerId?: boolean): InputNotifyPeer { if(ignorePeerId) { - if(peerId > 0) { + if(peerId.isUser()) { return {_: 'inputNotifyUsers'}; } else { - if(appPeersManager.isBroadcast(peerId)) { + if(this.isBroadcast(peerId)) { return {_: 'inputNotifyBroadcasts'}; } else { return {_: 'inputNotifyChats'}; @@ -219,13 +232,13 @@ export class AppPeersManager { } } - public getInputPeerById(peerId: number): InputPeer { + public getInputPeerById(peerId: PeerId): InputPeer { if(!peerId) { return {_: 'inputPeerEmpty'}; } - if(peerId < 0) { - const chatId = -peerId; + if(!peerId.isUser()) { + const chatId = peerId.toChatId(); if(!appChatsManager.isChannel(chatId)) { return appChatsManager.getChatInputPeer(chatId); } else { @@ -233,59 +246,61 @@ export class AppPeersManager { } } + const userId = peerId.toUserId(); return { _: 'inputPeerUser', - user_id: peerId, - access_hash: appUsersManager.getUser(peerId).access_hash + user_id: userId, + access_hash: appUsersManager.getUser(userId).access_hash }; } - public getInputDialogPeerById(peerId: number): InputDialogPeer { + public getInputDialogPeerById(peerId: PeerId | InputPeer): InputDialogPeer { return { _: 'inputDialogPeer', - peer: this.getInputPeerById(peerId) - } + peer: isObject(peerId) ? peerId : this.getInputPeerById(peerId) + }; } - public getPeerColorById(peerId: number, pic = true) { + public getPeerColorById(peerId: PeerId, pic = true) { if(!peerId) return ''; - const idx = DialogColorsMap[(peerId < 0 ? -peerId : peerId) % 7]; + const idx = DialogColorsMap[Math.abs(+peerId) % 7]; const color = (pic ? DialogColors : DialogColorsFg)[idx]; return color; } - public getPeerSearchText(peerId: number) { - let text; - if(peerId > 0) { - text = '%pu ' + appUsersManager.getUserSearchText(peerId); - } else if(peerId < 0) { - const chat = appChatsManager.getChat(-peerId); + public getPeerSearchText(peerId: PeerId) { + let text: string; + if(this.isUser(peerId)) { + text = '%pu ' + appUsersManager.getUserSearchText(peerId.toUserId()); + } else { + const chat = appChatsManager.getChat(peerId.toChatId()); text = '%pg ' + (chat.title || ''); } + return text; } - public getDialogType(peerId: number): PeerType { - if(appPeersManager.isMegagroup(peerId)) { + public getDialogType(peerId: PeerId): PeerType { + if(this.isMegagroup(peerId)) { return 'megagroup'; - } else if(appPeersManager.isChannel(peerId)) { + } else if(this.isChannel(peerId)) { return 'channel'; - } else if(peerId < 0) { + } else if(!this.isUser(peerId)) { return 'group'; } else { return peerId === rootScope.myId ? 'saved' : 'chat'; } } - public getDeleteButtonText(peerId: number): LangPackKey { + public getDeleteButtonText(peerId: PeerId): LangPackKey { switch(this.getDialogType(peerId)) { case 'channel': - return appChatsManager.hasRights(-peerId, 'delete_chat') ? 'ChannelDelete' : 'ChatList.Context.LeaveChannel'; + return appChatsManager.hasRights(peerId.toChatId(), 'delete_chat') ? 'ChannelDelete' : 'ChatList.Context.LeaveChannel'; case 'megagroup': case 'group': - return appChatsManager.hasRights(-peerId, 'delete_chat') ? 'DeleteMega' : 'ChatList.Context.LeaveGroup'; + return appChatsManager.hasRights(peerId.toChatId(), 'delete_chat') ? 'DeleteMega' : 'ChatList.Context.LeaveGroup'; default: return 'ChatList.Context.DeleteChat'; @@ -293,6 +308,55 @@ export class AppPeersManager { } } +[ + 'isChannel', + 'isMegagroup', + 'isAnyGroup', + 'isBroadcast', + 'isBot', + 'isContact', + 'isUser', + 'isAnyChat', +].forEach((value) => { + const newMethod = Array.isArray(value) ? value[0] : value; + const originMethod = Array.isArray(value) ? value[1] : value; + // @ts-ignore + String.prototype[newMethod] = function() { + // @ts-ignore + return appPeersManager[originMethod](this.toString()); + }; + + // @ts-ignore + Number.prototype[newMethod] = function() { + // @ts-ignore + return appPeersManager[originMethod](this); + }; +}); + +declare global { + interface String { + isChannel(): boolean; + isMegagroup(): boolean; + isAnyGroup(): boolean; + isBroadcast(): boolean; + isBot(): boolean; + isContact(): boolean; + isUser(): boolean; + isAnyChat(): boolean; + } + + interface Number { + isChannel(): boolean; + isMegagroup(): boolean; + isAnyGroup(): boolean; + isBroadcast(): boolean; + isBot(): boolean; + isContact(): boolean; + isUser(): boolean; + isAnyChat(): boolean; + } +} + const appPeersManager = new AppPeersManager(); MOUNT_CLASS_TO.appPeersManager = appPeersManager; export default appPeersManager; diff --git a/src/lib/appManagers/appPhotosManager.ts b/src/lib/appManagers/appPhotosManager.ts index 971e9336..5cad36f5 100644 --- a/src/lib/appManagers/appPhotosManager.ts +++ b/src/lib/appManagers/appPhotosManager.ts @@ -124,7 +124,7 @@ export class AppPhotosManager { return bestPhotoSize; } - public getUserPhotos(userId: number, maxId: string = '0', limit: number = 20) { + public getUserPhotos(userId: UserId, maxId: Photo.photo['id'] = '0', limit: number = 20) { const inputUser = appUsersManager.getUserInput(userId); return apiManager.invokeApiCacheable('photos.getUserPhotos', { user_id: inputUser, @@ -133,8 +133,8 @@ export class AppPhotosManager { max_id: maxId }, {cacheSeconds: 60}).then((photosResult) => { appUsersManager.saveApiUsers(photosResult.users); - const photoIds: string[] = photosResult.photos.map((photo, idx) => { - photosResult.photos[idx] = this.savePhoto(photo, {type: 'profilePhoto', peerId: userId}); + const photoIds = photosResult.photos.map((photo, idx) => { + photosResult.photos[idx] = this.savePhoto(photo, {type: 'profilePhoto', peerId: userId.toPeerId()}); return photo.id; }); diff --git a/src/lib/appManagers/appPollsManager.ts b/src/lib/appManagers/appPollsManager.ts index cc51bcd0..455d87d5 100644 --- a/src/lib/appManagers/appPollsManager.ts +++ b/src/lib/appManagers/appPollsManager.ts @@ -6,7 +6,7 @@ import { MOUNT_CLASS_TO } from "../../config/debug"; import { copy } from "../../helpers/object"; -import { InputMedia, Message, MessageEntity, MessageMedia } from "../../layer"; +import { InputMedia, Message, MessageEntity, MessageMedia, Poll, PollResults } from "../../layer"; import { logger, LogTypes } from "../logger"; import apiManager from "../mtproto/mtprotoworker"; import { RichTextProcessor } from "../richtextprocessor"; @@ -17,66 +17,6 @@ import appMessagesManager from './appMessagesManager'; import appPeersManager from './appPeersManager'; import appUsersManager from "./appUsersManager"; -export type PollAnswer = { - _: 'pollAnswer', - text: string, - option: Uint8Array -}; - -export type PollAnswerVoters = { - _: 'pollAnswerVoters', - flags: number, - option: Uint8Array, - voters: number, - - pFlags: Partial<{ - chosen: true, - correct: true - }> -}; - -export type PollResult = { - _: 'pollAnswerVoters', - flags: number, - option: Uint8Array, - voters: number, - - pFlags?: Partial<{chosen: true, correct: true}> -}; - -export type PollResults = { - _: 'pollResults', - flags: number, - results?: Array, - total_voters?: number, - recent_voters?: number[], - solution?: string, - solution_entities?: any[], - - pFlags: Partial<{ - min: true - }>, -}; - -export type Poll = { - _: 'poll', - question: string, - id: string, - answers: Array, - close_period?: number, - close_date?: number - - pFlags?: Partial<{ - closed: true, - public_voters: true, - multiple_choice: true, - quiz: true - }>, - rQuestion?: string, - rReply?: string, - chosenIndexes?: number[] -}; - export class AppPollsManager { public polls: {[id: string]: Poll} = {}; public results: {[id: string]: PollResults} = {}; diff --git a/src/lib/appManagers/appPrivacyManager.ts b/src/lib/appManagers/appPrivacyManager.ts index 2f014c44..9d2e8200 100644 --- a/src/lib/appManagers/appPrivacyManager.ts +++ b/src/lib/appManagers/appPrivacyManager.ts @@ -87,7 +87,7 @@ export class AppPrivacyManager { public getPrivacyRulesDetails(rules: PrivacyRule[]) { const types: PrivacyType[] = []; - type peers = {users: number[], chats: number[]}; + type peers = {users: UserId[], chats: ChatId[]}; let allowPeers: peers = {users: [], chats: []}, disallowPeers: peers = {users: [], chats: []}; rules.forEach(rule => { switch(rule._) { diff --git a/src/lib/appManagers/appProfileManager.ts b/src/lib/appManagers/appProfileManager.ts index 3ec4243b..e3dd5671 100644 --- a/src/lib/appManagers/appProfileManager.ts +++ b/src/lib/appManagers/appProfileManager.ts @@ -27,17 +27,17 @@ import appPeersManager from "./appPeersManager"; import appPhotosManager from "./appPhotosManager"; import appUsersManager, { MyTopPeer, User } from "./appUsersManager"; -export type UserTyping = Partial<{userId: number, action: SendMessageAction, timeout: number}>; +export type UserTyping = Partial<{userId: UserId, action: SendMessageAction, timeout: number}>; export class AppProfileManager { //private botInfos: any = {}; - public usersFull: {[id: string]: UserFull.userFull} = {}; - public chatsFull: {[id: string]: ChatFull} = {}; - private fullPromises: {[peerId: string]: Promise} = {}; + public usersFull: {[id: UserId]: UserFull.userFull} = {}; + public chatsFull: {[id: ChatId]: ChatFull} = {}; + private fullPromises: {[peerId: PeerId]: Promise} = {}; - private megagroupOnlines: {[id: number]: {timestamp: number, onlines: number}}; + private megagroupOnlines: {[id: ChatId]: {timestamp: number, onlines: number}}; - private typingsInPeer: {[peerId: number]: UserTyping[]}; + private typingsInPeer: {[peerId: PeerId]: UserTyping[]}; constructor() { rootScope.addMultipleEventsListeners({ @@ -125,7 +125,7 @@ export class AppProfileManager { } }); - rootScope.addEventListener('invalidate_participants', chatId => { + rootScope.addEventListener('invalidate_participants', (chatId) => { this.invalidateChannelParticipants(chatId); }); @@ -153,30 +153,34 @@ export class AppProfileManager { }; } */ - public getProfile(id: number, override?: true): Promise { + public getProfile(id: UserId, override?: true): Promise { if(this.usersFull[id] && !override) { return Promise.resolve(this.usersFull[id]); } - if(this.fullPromises[id]) { - return this.fullPromises[id] as any; + const peerId = id.toPeerId(false); + if(this.fullPromises[peerId]) { + return this.fullPromises[peerId] as any; } - return this.fullPromises[id] = apiManager.invokeApi('users.getFullUser', { + return this.fullPromises[peerId] = apiManager.invokeApi('users.getFullUser', { id: appUsersManager.getUserInput(id) }).then((userFull) => { const user = userFull.user as User; appUsersManager.saveApiUser(user, true); if(userFull.profile_photo) { - userFull.profile_photo = appPhotosManager.savePhoto(userFull.profile_photo, {type: 'profilePhoto', peerId: id}); + userFull.profile_photo = appPhotosManager.savePhoto(userFull.profile_photo, {type: 'profilePhoto', peerId: peerId}); } if(userFull.about !== undefined) { userFull.rAbout = RichTextProcessor.wrapRichText(userFull.about, {noLinebreaks: true}); } - appNotificationsManager.savePeerSettings(id, userFull.notify_settings); + appNotificationsManager.savePeerSettings({ + peerId, + settings: userFull.notify_settings + }); /* if(userFull.bot_info) { userFull.bot_info = this.saveBotInfo(userFull.bot_info) as any; @@ -184,18 +188,18 @@ export class AppProfileManager { //appMessagesManager.savePinnedMessage(id, userFull.pinned_msg_id); - delete this.fullPromises[id]; + delete this.fullPromises[peerId]; return this.usersFull[id] = userFull; }) as any; } - public getProfileByPeerId(peerId: number, override?: true): Promise { - if(peerId < 0) return this.getChatFull(-peerId, override); - else return this.getProfile(peerId, override); + public getProfileByPeerId(peerId: PeerId, override?: true): Promise { + if(appPeersManager.isAnyChat(peerId)) return this.getChatFull(peerId.toChatId(), override); + else return this.getProfile(peerId.toUserId(), override); } - public getFullPhoto(peerId: number) { + public getFullPhoto(peerId: PeerId) { return this.getProfileByPeerId(peerId).then(profile => { switch(profile._) { case 'userFull': @@ -207,7 +211,7 @@ export class AppProfileManager { }); } - /* public getPeerBots(peerId: number) { + /* public getPeerBots(peerId: PeerId) { var peerBots: any[] = []; if(peerId >= 0 && !appUsersManager.isBot(peerId) || (appPeersManager.isChannel(peerId) && !appPeersManager.isMegagroup(peerId))) { @@ -223,7 +227,7 @@ export class AppProfileManager { }); } - return this.getChatFull(-peerId).then((chatFull: any) => { + return this.getChatFull(peerId.toChatId()).then((chatFull: any) => { chatFull.bot_info.forEach((botInfo: any) => { peerBots.push(this.saveBotInfo(botInfo)) }); @@ -231,7 +235,7 @@ export class AppProfileManager { }); } */ - public getChatFull(id: number, override?: true): Promise { + public getChatFull(id: ChatId, override?: true): Promise { if(appChatsManager.isChannel(id)) { return this.getChannelFull(id, override); } @@ -245,7 +249,7 @@ export class AppProfileManager { } } - const peerId = -id; + const peerId = id.toPeerId(true); if(this.fullPromises[peerId] !== undefined) { return this.fullPromises[peerId] as any; } @@ -262,7 +266,10 @@ export class AppProfileManager { } //appMessagesManager.savePinnedMessage(peerId, fullChat.pinned_msg_id); - appNotificationsManager.savePeerSettings(peerId, fullChat.notify_settings); + appNotificationsManager.savePeerSettings({ + peerId, + settings: fullChat.notify_settings + }); delete this.fullPromises[peerId]; this.chatsFull[id] = fullChat; rootScope.dispatchEvent('chat_full_update', id); @@ -271,7 +278,7 @@ export class AppProfileManager { }) as any; } - public getChatInviteLink(id: number, force?: boolean) { + public getChatInviteLink(id: ChatId, force?: boolean) { return this.getChatFull(id).then((chatFull) => { if(!force && chatFull.exported_invite && @@ -280,7 +287,7 @@ export class AppProfileManager { } return apiManager.invokeApi('messages.exportChatInvite', { - peer: appPeersManager.getInputPeerById(-id) + peer: appPeersManager.getInputPeerById(id.toPeerId(true)) }).then((exportedInvite) => { if(this.chatsFull[id] !== undefined) { this.chatsFull[id].exported_invite = exportedInvite; @@ -291,7 +298,7 @@ export class AppProfileManager { }); } - public getChannelParticipants(id: number, filter: ChannelParticipantsFilter = {_: 'channelParticipantsRecent'}, limit = 200, offset = 0) { + public getChannelParticipants(id: ChatId, filter: ChannelParticipantsFilter = {_: 'channelParticipantsRecent'}, limit = 200, offset = 0) { if(filter._ === 'channelParticipantsRecent') { const chat = appChatsManager.getChat(id); if(chat && @@ -308,7 +315,7 @@ export class AppProfileManager { filter, offset, limit, - hash: 0 + hash: '0' }, {cacheSeconds: 60}).then(result => { appUsersManager.saveApiUsers((result as ChannelsChannelParticipants.channelsChannelParticipants).users); return result as ChannelsChannelParticipants.channelsChannelParticipants; @@ -340,7 +347,7 @@ export class AppProfileManager { } */ } - public getChannelParticipant(id: number, peerId: number) { + public getChannelParticipant(id: ChatId, peerId: PeerId) { return apiManager.invokeApiSingle('channels.getParticipant', { channel: appChatsManager.getChannelInput(id), participant: appPeersManager.getInputPeerById(peerId), @@ -350,12 +357,12 @@ export class AppProfileManager { }); } - public getChannelFull(id: number, override?: true): Promise { + public getChannelFull(id: ChatId, override?: true): Promise { if(this.chatsFull[id] !== undefined && !override) { return Promise.resolve(this.chatsFull[id] as ChatFull.channelFull); } - const peerId = -id; + const peerId = id.toPeerId(true); if(this.fullPromises[peerId] !== undefined) { return this.fullPromises[peerId] as any; } @@ -370,7 +377,10 @@ export class AppProfileManager { fullChannel.chat_photo = appPhotosManager.savePhoto(fullChannel.chat_photo, {type: 'profilePhoto', peerId}); //appPhotosManager.savePhoto(fullChannel.chat_photo); } - appNotificationsManager.savePeerSettings(peerId, fullChannel.notify_settings); + appNotificationsManager.savePeerSettings({ + peerId, + settings: fullChannel.notify_settings + }); delete this.fullPromises[peerId]; this.chatsFull[id] = fullChannel; @@ -398,7 +408,7 @@ export class AppProfileManager { }) as any; } - public getMentions(chatId: number, query: string, threadId?: number): Promise { + public getMentions(chatId: ChatId, query: string, threadId?: number): Promise { const processUserIds = (topPeers: MyTopPeer[]) => { const startsWithAt = query.charAt(0) === '@'; if(startsWithAt) query = query.slice(1); @@ -406,11 +416,11 @@ export class AppProfileManager { if(startsWithAt) query = query.slice(1); const index = new SearchIndex(!startsWithAt, !startsWithAt); */ - const index = new SearchIndex({ + const index = new SearchIndex({ ignoreCase: true }); - const ratingMap: Map = new Map(); + const ratingMap: Map = new Map(); topPeers.forEach(peer => { index.indexObject(peer.id, appUsersManager.getUserSearchText(peer.id)); ratingMap.set(peer.id, peer.rating); @@ -421,7 +431,7 @@ export class AppProfileManager { return peerIds; }; - let promise: Promise; + let promise: Promise; if(appChatsManager.isChannel(chatId)) { promise = this.getChannelParticipants(chatId, { _: 'channelParticipantsMentions', @@ -432,7 +442,7 @@ export class AppProfileManager { }); } else if(chatId) { promise = (this.getChatFull(chatId) as Promise).then(chatFull => { - return (chatFull.participants as ChatParticipants.chatParticipants).participants.map(p => p.user_id); + return (chatFull.participants as ChatParticipants.chatParticipants).participants.map(p => p.user_id.toPeerId()); }); } else { promise = Promise.resolve([]); @@ -449,7 +459,7 @@ export class AppProfileManager { }); } - public invalidateChannelParticipants(id: number) { + public invalidateChannelParticipants(id: ChatId) { delete this.chatsFull[id]; delete this.fullPromises[-id]; apiManager.clearCache('channels.getParticipants', (params) => (params.channel as InputChannel.inputChannel).channel_id === id); @@ -501,7 +511,7 @@ export class AppProfileManager { }); } - public getChatMembersString(id: number) { + public getChatMembersString(id: ChatId) { const chat: Chat = appChatsManager.getChat(id); if(chat._ === 'chatForbidden') { return i18n('YouWereKicked'); @@ -526,7 +536,7 @@ export class AppProfileManager { return i18n(key, [numberThousandSplitter(count)]); } - public async getOnlines(id: number): Promise { + public async getOnlines(id: ChatId): Promise { if(appChatsManager.isMegagroup(id)) { const timestamp = Date.now() / 1000 | 0; const cached = this.megagroupOnlines[id] ?? (this.megagroupOnlines[id] = {timestamp: 0, onlines: 1}); @@ -566,14 +576,14 @@ export class AppProfileManager { } private onUpdateUserTyping = (update: Update.updateUserTyping | Update.updateChatUserTyping | Update.updateChannelUserTyping) => { - const fromId = (update as Update.updateUserTyping).user_id || appPeersManager.getPeerId((update as Update.updateChatUserTyping).from_id); + const fromId = (update as Update.updateUserTyping).user_id ? + (update as Update.updateUserTyping).user_id.toPeerId() : + appPeersManager.getPeerId((update as Update.updateChatUserTyping).from_id); if(rootScope.myId === fromId || update.action._ === 'speakingInGroupCallAction') { return; } - const peerId = update._ === 'updateUserTyping' ? - fromId : - -((update as Update.updateChatUserTyping).chat_id || (update as Update.updateChannelUserTyping).channel_id); + const peerId = appPeersManager.getPeerId(update); const typings = this.typingsInPeer[peerId] ?? (this.typingsInPeer[peerId] = []); let typing = typings.find(t => t.userId === fromId); @@ -643,8 +653,8 @@ export class AppProfileManager { private onUpdatePeerBlocked = (update: Update.updatePeerBlocked) => { const peerId = appPeersManager.getPeerId(update.peer_id); - if(peerId > 0) { - const userFull = this.usersFull[peerId]; + if(appPeersManager.isUser(peerId)) { + const userFull = this.usersFull[peerId.toUserId()]; if(userFull) { if(update.blocked) userFull.pFlags.blocked = true; else delete userFull.pFlags.blocked; @@ -654,7 +664,7 @@ export class AppProfileManager { rootScope.dispatchEvent('peer_block', {peerId, blocked: update.blocked}); }; - public getPeerTypings(peerId: number) { + public getPeerTypings(peerId: PeerId) { return this.typingsInPeer[peerId]; } } diff --git a/src/lib/appManagers/appStateManager.ts b/src/lib/appManagers/appStateManager.ts index 4116c17f..16ce9ab4 100644 --- a/src/lib/appManagers/appStateManager.ts +++ b/src/lib/appManagers/appStateManager.ts @@ -23,10 +23,12 @@ import { IS_MOBILE } from '../../environment/userAgent'; import DATABASE_STATE from '../../config/databases/state'; import sessionStorage from '../sessionStorage'; import { nextRandomUint } from '../../helpers/random'; +import compareVersion from '../../helpers/compareVersion'; const REFRESH_EVERY = 24 * 60 * 60 * 1000; // 1 day //const REFRESH_EVERY_WEEK = 24 * 60 * 60 * 1000 * 7; // 7 days const STATE_VERSION = App.versionFull; +const BUILD = App.build; export type Background = { type: 'color' | 'image' | 'default', @@ -44,7 +46,7 @@ export type Theme = { export type State = { allDialogsLoaded: DialogsStorage['allDialogsLoaded'], pinnedOrders: DialogsStorage['pinnedOrders'], - contactsList: number[], + contactsList: UserId[], updates: Partial<{ seq: number, pts: number, @@ -60,10 +62,11 @@ export type State = { cachedTime: number } }, - recentSearch: number[], + recentSearch: PeerId[], version: typeof STATE_VERSION, + build: typeof BUILD, authState: AuthState, - hiddenPinnedMessages: {[peerId: string]: number}, + hiddenPinnedMessages: {[peerId: PeerId]: number}, settings: { messagesTextSize: number, sendShortcut: 'enter' | 'ctrlEnter', @@ -111,6 +114,7 @@ export const STATE_INIT: State = { topPeersCache: {}, recentSearch: [], version: STATE_VERSION, + build: BUILD, authState: { _: IS_MOBILE ? 'authStateSignIn' : 'authStateSignQr' }, @@ -173,8 +177,8 @@ const REFRESH_KEYS = ['contactsList', 'stateCreatedTime', export class AppStateManager extends EventListenerBase<{ save: (state: State) => Promise, - peerNeeded: (peerId: number) => void, - peerUnneeded: (peerId: number) => void + peerNeeded: (peerId: PeerId) => void, + peerUnneeded: (peerId: PeerId) => void }> { public static STATE_INIT = STATE_INIT; private loaded: Promise; @@ -182,13 +186,13 @@ export class AppStateManager extends EventListenerBase<{ private state: State; - private neededPeers: Map> = new Map(); - private singlePeerMap: Map = new Map(); + private neededPeers: Map> = new Map(); + private singlePeerMap: Map = new Map(); public storages = { - users: new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'users'), - chats: new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'chats'), - dialogs: new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'dialogs') + users: new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'users'), + chats: new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'chats'), + dialogs: new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'dialogs') }; public storagesResults: { @@ -219,6 +223,7 @@ export class AppStateManager extends EventListenerBase<{ .concat(storagesPromises); Promise.all(promises).then(async(arr) => { + // await new Promise((resolve) => setTimeout(resolve, 3e3)); /* const self = this; const skipHandleKeys = new Set(['isProxy', 'filters', 'drafts']); const getHandler = (path?: string) => { @@ -280,7 +285,7 @@ export class AppStateManager extends EventListenerBase<{ const values = await Promise.all(keys.map(key => stateStorage.get(key as any))); keys.push('user_auth'); - values.push(typeof(auth) === 'number' ? {dcID: values[0] || App.baseDcId, date: Date.now() / 1000 | 0, id: auth} as UserAuth : auth); + values.push(typeof(auth) === 'number' || typeof(auth) === 'string' ? {dcID: values[0] || App.baseDcId, date: Date.now() / 1000 | 0, id: auth.toPeerId(false)} as UserAuth : auth); let obj: any = {}; keys.forEach((key, idx) => { @@ -317,7 +322,9 @@ export class AppStateManager extends EventListenerBase<{ if(auth) { // ! Warning ! DON'T delete this state.authState = {_: 'authStateSignedIn'}; - rootScope.dispatchEvent('user_auth', typeof(auth) === 'number' ? {dcID: 0, date: Date.now() / 1000 | 0, id: auth} : auth); // * support old version + rootScope.dispatchEvent('user_auth', typeof(auth) === 'number' || typeof(auth) === 'string' ? + {dcID: 0, date: Date.now() / 1000 | 0, id: auth.toPeerId(false)} : + auth); // * support old version } // * Read storages @@ -409,9 +416,19 @@ export class AppStateManager extends EventListenerBase<{ this.pushToState(missingKey, state[missingKey]); }); - if(state.version !== STATE_VERSION) { - this.pushToState('version', STATE_VERSION); - this.newVersion = STATE_VERSION; + if(state.version !== STATE_VERSION/* || true */) { + // reset filters and dialogs if version is older + if(compareVersion(state.version, '0.8.7') === -1) { + this.state.allDialogsLoaded = copy(STATE_INIT.allDialogsLoaded); + this.state.filters = copy(STATE_INIT.filters); + const result = this.storagesResults.dialogs; + if(result?.length) { + result.length = 0; + } + } + + this.pushToState('version', this.newVersion = STATE_VERSION); + this.pushToState('build', BUILD); } // ! probably there is better place for it @@ -458,7 +475,7 @@ export class AppStateManager extends EventListenerBase<{ }); } - public requestPeer(peerId: number, type: string, limit?: number) { + public requestPeer(peerId: PeerId, type: string, limit?: number) { let set = this.neededPeers.get(peerId); if(set && set.has(type)) { return; @@ -470,6 +487,7 @@ export class AppStateManager extends EventListenerBase<{ } set.add(type); + this.dispatchEvent('peerNeeded', peerId); if(limit !== undefined) { @@ -477,11 +495,11 @@ export class AppStateManager extends EventListenerBase<{ } } - public isPeerNeeded(peerId: number) { + public isPeerNeeded(peerId: PeerId) { return this.neededPeers.has(peerId); } - public keepPeerSingle(peerId: number, type: string) { + public keepPeerSingle(peerId: PeerId, type: string) { const existsPeerId = this.singlePeerMap.get(type); if(existsPeerId && existsPeerId !== peerId && this.neededPeers.has(existsPeerId)) { const set = this.neededPeers.get(existsPeerId); diff --git a/src/lib/appManagers/appStickersManager.ts b/src/lib/appManagers/appStickersManager.ts index 8bb9c921..fe9139cc 100644 --- a/src/lib/appManagers/appStickersManager.ts +++ b/src/lib/appManagers/appStickersManager.ts @@ -17,14 +17,14 @@ import DATABASE_STATE from '../../config/databases/state'; const CACHE_TIME = 3600e3; export type MyStickerSetInput = { - id: string, - access_hash?: string + id: StickerSet.stickerSet['id'], + access_hash?: StickerSet.stickerSet['access_hash'] }; export class AppStickersManager { - private storage = new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'stickerSets'); + private storage = new AppStorage, typeof DATABASE_STATE>(DATABASE_STATE, 'stickerSets'); - private getStickerSetPromises: {[setId: string]: Promise} = {}; + private getStickerSetPromises: {[setId: Long]: Promise} = {}; private getStickersByEmoticonsPromises: {[emoticon: string]: Promise} = {}; private greetingStickers: Document.document[]; @@ -153,7 +153,7 @@ export class AppStickersManager { }); } - public saveStickerSet(res: Omit, id: string) { + public saveStickerSet(res: Omit, id: DocId) { //console.log('stickers save set', res);w const newSet: MessagesStickerSet = { @@ -220,7 +220,7 @@ export class AppStickersManager { } else if(!set.access_hash) { return { _: 'inputStickerSetShortName', - short_name: set.id + short_name: '' + set.id }; } else { return { diff --git a/src/lib/appManagers/appUsersManager.ts b/src/lib/appManagers/appUsersManager.ts index 681b8060..c2405a83 100644 --- a/src/lib/appManagers/appUsersManager.ts +++ b/src/lib/appManagers/appUsersManager.ts @@ -10,7 +10,7 @@ */ import { MOUNT_CLASS_TO } from "../../config/debug"; -import { filterUnique } from "../../helpers/array"; +import { filterUnique, indexOfAndSplice } from "../../helpers/array"; import { CancellablePromise, deferredPromise } from "../../helpers/cancellablePromise"; import cleanSearchText from "../../helpers/cleanSearchText"; import cleanUsername from "../../helpers/cleanUsername"; @@ -33,16 +33,16 @@ import appStateManager from "./appStateManager"; export type User = MTUser.user; export type TopPeerType = 'correspondents' | 'bots_inline'; -export type MyTopPeer = {id: number, rating: number}; +export type MyTopPeer = {id: PeerId, rating: number}; export class AppUsersManager { private storage = appStateManager.storages.users; - private users: {[userId: number]: User}; - private usernames: {[username: string]: number}; - private contactsIndex: SearchIndex; - private contactsFillPromise: CancellablePromise>; - private contactsList: Set; + private users: {[userId: UserId]: User}; + private usernames: {[username: string]: UserId}; + private contactsIndex: SearchIndex; + private contactsFillPromise: CancellablePromise; + private contactsList: Set; private updatedContactsList: boolean; private getTopPeersPromises: {[type in TopPeerType]?: Promise}; @@ -91,7 +91,7 @@ export class AppUsersManager { this.setUserToStateIfNeeded(user); rootScope.dispatchEvent('user_update', userId); - rootScope.dispatchEvent('avatar_update', userId); + rootScope.dispatchEvent('avatar_update', userId.toPeerId()); } else console.warn('No user by id:', userId); }, @@ -142,22 +142,28 @@ export class AppUsersManager { } } - appStateManager.addEventListener('peerNeeded', (peerId: number) => { - if(peerId < 0 || this.storage.getFromCache(peerId)) { + appStateManager.addEventListener('peerNeeded', (peerId) => { + if(!appPeersManager.isUser(peerId)) { return; } - - this.storage.set({ - [peerId]: this.getUser(peerId) - }); + + const userId = peerId.toUserId(); + if(!this.storage.getFromCache(userId)) { + this.storage.set({ + [userId]: this.getUser(userId) + }); + } }); - appStateManager.addEventListener('peerUnneeded', (peerId: number) => { - if(peerId < 0 || !this.storage.getFromCache(peerId)) { + appStateManager.addEventListener('peerUnneeded', (peerId) => { + if(!appPeersManager.isUser(peerId)) { return; } - this.storage.delete(peerId); + const userId = peerId.toUserId(); + if(this.storage.getFromCache(userId)) { + this.storage.delete(userId); + } }); }); } @@ -165,10 +171,11 @@ export class AppUsersManager { public clear(init = false) { if(!init) { const users = appStateManager.storagesResults.users; - for(const _userId in this.users) { - const userId = +_userId; + for(const userId in this.users) { + // const userId = +userId; if(!userId) continue; - if(!appStateManager.isPeerNeeded(userId)) { + const peerId = userId.toPeerId(); + if(!appStateManager.isPeerNeeded(peerId)) { const user = this.users[userId]; if(user.username) { delete this.usernames[cleanUsername(user.username)]; @@ -206,7 +213,7 @@ export class AppUsersManager { this.updatedContactsList = true; - const promise = deferredPromise>(); + const promise = deferredPromise>(); apiManager.invokeApi('contacts.getContacts').then((result) => { if(result._ === 'contacts.contacts') { this.contactsList.clear(); @@ -251,13 +258,13 @@ export class AppUsersManager { }); } - public pushContact(userId: number) { - this.contactsList.add(userId); - this.contactsIndex.indexObject(userId, this.getUserSearchText(userId)); - appStateManager.requestPeer(userId, 'contacts'); + public pushContact(id: UserId) { + this.contactsList.add(id); + this.contactsIndex.indexObject(id, this.getUserSearchText(id)); + appStateManager.requestPeer(id.toPeerId(), 'contacts'); } - public getUserSearchText(id: number) { + public getUserSearchText(id: UserId) { const user = this.users[id]; if(!user) { return ''; @@ -299,10 +306,11 @@ export class AppUsersManager { }); } - contactsList.findAndSplice(p => p === rootScope.myId); + const myUserId = rootScope.myId.toUserId(); + indexOfAndSplice(contactsList, myUserId); if(includeSaved) { if(this.testSelfSearch(query)) { - contactsList.unshift(rootScope.myId); + contactsList.unshift(myUserId); } } @@ -310,7 +318,16 @@ export class AppUsersManager { }); } - public toggleBlock(peerId: number, block: boolean) { + public getContactsPeerIds( + query?: Parameters[0], + includeSaved?: Parameters[1], + sortBy?: Parameters[2]) { + return this.getContacts(query, includeSaved, sortBy).then(userIds => { + return userIds.map(userId => userId.toPeerId(false)); + }); + } + + public toggleBlock(peerId: PeerId, block: boolean) { return apiManager.invokeApiSingle(block ? 'contacts.block' : 'contacts.unblock', { id: appPeersManager.getInputPeerById(peerId) }).then(value => { @@ -334,7 +351,7 @@ export class AppUsersManager { } private createSearchIndex() { - return new SearchIndex({ + return new SearchIndex({ clearBadChars: true, ignoreCase: true, latinize: true, @@ -439,18 +456,18 @@ export class AppUsersManager { } if(changedPhoto) { - rootScope.dispatchEvent('avatar_update', user.id); + rootScope.dispatchEvent('avatar_update', user.id.toPeerId()); } if(changedTitle) { - rootScope.dispatchEvent('peer_title_edit', user.id); + rootScope.dispatchEvent('peer_title_edit', user.id.toPeerId()); } this.setUserToStateIfNeeded(user); } public setUserToStateIfNeeded(user: User) { - if(appStateManager.isPeerNeeded(user.id)) { + if(appStateManager.isPeerNeeded(user.id.toPeerId())) { this.storage.set({ [user.id]: user }); @@ -461,12 +478,12 @@ export class AppUsersManager { return '+' + formatPhoneNumber(phone).formatted; } - public isUserOnlineVisible(id: number) { + public isUserOnlineVisible(id: UserId) { return this.getUserStatusForSort(id) > 3; } - public getUserStatusForSort(status: User['status'] | number) { - if(typeof(status) === 'number') { + public getUserStatusForSort(status: User['status'] | UserId) { + if(typeof(status) !== 'object') { status = this.getUser(status).status; } @@ -498,23 +515,23 @@ export class AppUsersManager { return 0; } - public getUser(id: any): User { - if(isObject(id)) { + public getUser(id: any) { + if(isObject(id)) { return id; } - return this.users[id] || {id: id, pFlags: {deleted: true}, access_hash: ''} as User; + return this.users[id] || {id, pFlags: {deleted: true}, access_hash: ''} as User; } public getSelf() { return this.getUser(rootScope.myId); } - public getUserStatusString(userId: number): HTMLElement { + public getUserStatusString(id: UserId): HTMLElement { let key: LangPackKey; let args: any[]; - switch(userId) { + switch(id) { case REPLIES_PEER_ID: key = 'Peer.RepliesNotifications'; break; @@ -522,12 +539,12 @@ export class AppUsersManager { key = 'Peer.ServiceNotifications'; break; default: { - if(this.isBot(userId)) { + if(this.isBot(id)) { key = 'Bot'; break; } - const user = this.getUser(userId); + const user = this.getUser(id); if(!user) { key = '' as any; break; @@ -596,34 +613,34 @@ export class AppUsersManager { return i18n(key, args); } - public isBot(id: number) { + public isBot(id: UserId) { return this.users[id] && this.users[id].pFlags.bot; } - public isContact(id: number) { + public isContact(id: UserId) { return this.contactsList.has(id) || (this.users[id] && this.users[id].pFlags.contact); } - public isRegularUser(id: number) { + public isRegularUser(id: UserId) { const user = this.users[id]; return user && !this.isBot(id) && !user.pFlags.deleted && !user.pFlags.support; } - public isNonContactUser(id: number) { + public isNonContactUser(id: UserId) { return this.isRegularUser(id) && !this.isContact(id) && id !== rootScope.myId; } - public hasUser(id: number, allowMin?: boolean) { + public hasUser(id: UserId, allowMin?: boolean) { const user = this.users[id]; return isObject(user) && (allowMin || !user.pFlags.min); } - public canSendToUser(id: number) { + public canSendToUser(id: UserId) { const user = this.getUser(id); return !user.pFlags.deleted && user.id !== REPLIES_PEER_ID; } - public getUserPhoto(id: number) { + public getUserPhoto(id: UserId) { const user = this.getUser(id); return user && user.photo || { @@ -631,12 +648,12 @@ export class AppUsersManager { }; } - public getUserString(id: number) { + public getUserString(id: UserId) { const user = this.getUser(id); return 'u' + id + (user.access_hash ? '_' + user.access_hash : ''); } - public getUserInput(id: number): InputUser { + public getUserInput(id: UserId): InputUser { const user = this.getUser(id); if(user.pFlags && user.pFlags.self) { return {_: 'inputUserSelf'}; @@ -649,7 +666,7 @@ export class AppUsersManager { }; } - public getContactMediaInput(id: number): InputMedia.inputMediaContact { + public getContactMediaInput(id: UserId): InputMedia.inputMediaContact { const user = this.getUser(id); return { @@ -682,7 +699,7 @@ export class AppUsersManager { } } - public forceUserOnline(id: number, eventTimestamp?: number) { + public forceUserOnline(id: UserId, eventTimestamp?: number) { if(this.isBot(id)) { return; } @@ -775,7 +792,7 @@ export class AppUsersManager { [type]: true, offset: 0, limit: 15, - hash: 0 + hash: '0' }).then((result) => { let topPeers: MyTopPeer[] = []; if(result._ === 'contacts.topPeers') { @@ -809,7 +826,7 @@ export class AppUsersManager { appChatsManager.saveApiChats(contactsBlocked.chats); const count = contactsBlocked._ === 'contacts.blocked' ? contactsBlocked.users.length + contactsBlocked.chats.length : contactsBlocked.count; - const peerIds = contactsBlocked.users.map(u => u.id).concat(contactsBlocked.chats.map(c => -c.id)); + const peerIds: PeerId[] = contactsBlocked.users.map(u => u.id.toPeerId()).concat(contactsBlocked.chats.map(c => c.id.toPeerId(true))); return {count, peerIds}; }); @@ -856,7 +873,7 @@ export class AppUsersManager { }); } - private onContactUpdated(userId: number, isContact: boolean, curIsContact = this.isContact(userId)) { + private onContactUpdated(userId: UserId, isContact: boolean, curIsContact = this.isContact(userId)) { if(isContact !== curIsContact) { if(isContact) { this.pushContact(userId); @@ -878,7 +895,7 @@ export class AppUsersManager { }); } - public setUserStatus(userId: number, offline: boolean) { + public setUserStatus(userId: UserId, offline: boolean) { if(this.isBot(userId)) { return; } @@ -899,7 +916,7 @@ export class AppUsersManager { } } - public addContact(userId: number, first_name: string, last_name: string, phone: string, showPhone?: true) { + public addContact(userId: UserId, first_name: string, last_name: string, phone: string, showPhone?: true) { /* if(!userId) { return this.importContacts([{ first_name, @@ -921,7 +938,7 @@ export class AppUsersManager { }); } - public deleteContacts(userIds: number[]) { + public deleteContacts(userIds: UserId[]) { return apiManager.invokeApi('contacts.deleteContacts', { id: userIds.map(userId => this.getUserInput(userId)) }).then((updates) => { diff --git a/src/lib/appManagers/appWebPagesManager.ts b/src/lib/appManagers/appWebPagesManager.ts index dd01ada4..dc18c10d 100644 --- a/src/lib/appManagers/appWebPagesManager.ts +++ b/src/lib/appManagers/appWebPagesManager.ts @@ -21,12 +21,14 @@ import { MOUNT_CLASS_TO } from "../../config/debug"; const photoTypeSet = new Set(['photo', 'video', 'gif', 'document']); +type WebPageMessageKey = `${PeerId}_${number}`; + export class AppWebPagesManager { private webpages: { [webPageId: string]: WebPage } = {}; private pendingWebPages: { - [webPageId: string]: Set + [webPageId: string]: Set } = {}; constructor() { @@ -37,7 +39,7 @@ export class AppWebPagesManager { }); } - public saveWebPage(apiWebPage: WebPage, messageKey?: string, mediaContext?: ReferenceContext) { + public saveWebPage(apiWebPage: WebPage, messageKey?: WebPageMessageKey, mediaContext?: ReferenceContext) { if(apiWebPage._ === 'webPageNotModified') return; const {id} = apiWebPage; @@ -102,13 +104,13 @@ export class AppWebPagesManager { } if(!messageKey && pendingSet !== undefined) { - const msgs: {peerId: number, mid: number, isScheduled: boolean}[] = []; + const msgs: {peerId: PeerId, mid: number, isScheduled: boolean}[] = []; pendingSet.forEach((value) => { - const splitted = value.split('_'); + const [peerId, mid, isScheduled] = value.split('_'); msgs.push({ - peerId: +splitted[0], - mid: +splitted[1], - isScheduled: !!splitted[2] + peerId: peerId.toPeerId(), + mid: +mid, + isScheduled: !!isScheduled }); }); @@ -121,11 +123,11 @@ export class AppWebPagesManager { return apiWebPage; } - public getMessageKeyForPendingWebPage(peerId: number, mid: number, isScheduled = false) { - return peerId + '_' + mid + (isScheduled ? '_s' : ''); + public getMessageKeyForPendingWebPage(peerId: PeerId, mid: number, isScheduled?: boolean): WebPageMessageKey { + return peerId + '_' + mid + (isScheduled ? '_s' : '') as any; } - public deleteWebPageFromPending(webPage: WebPage, messageKey: string) { + public deleteWebPageFromPending(webPage: WebPage, messageKey: WebPageMessageKey) { const id = (webPage as WebPage.webPage).id; if(!id) return; @@ -139,7 +141,7 @@ export class AppWebPagesManager { } } - public getWebPage(id: string) { + public getWebPage(id: WebPage.webPage['id']) { return this.webpages[id]; } } diff --git a/src/lib/mtproto/apiFileManager.ts b/src/lib/mtproto/apiFileManager.ts index cea29ca6..41d802ff 100644 --- a/src/lib/mtproto/apiFileManager.ts +++ b/src/lib/mtproto/apiFileManager.ts @@ -28,6 +28,7 @@ import { isWebpSupported } from "./mtproto.worker"; import { bytesToHex } from "../../helpers/bytes"; import assumeType from "../../helpers/assumeType"; import ctx from "../../environment/ctx"; +import noop from "../../helpers/noop"; type Delayed = { offset: number, @@ -292,7 +293,7 @@ export class ApiFileManager { }, 60000) }; - deferred.finally(() => { + deferred.catch(noop).finally(() => { clearTimeout(r.timeout); }); @@ -363,10 +364,11 @@ export class ApiFileManager { const deferred = deferredPromise(); const mimeType = options.mimeType || 'image/jpeg'; - let canceled = false; + let error: Error; let resolved = false; let cacheFileWriter: ReturnType; - let errorHandler = (error: any) => { + let errorHandler = (_error: Error) => { + error = _error; delete this.cachedDownloadPromises[fileName]; deferred.reject(error); errorHandler = () => {}; @@ -434,6 +436,8 @@ export class ApiFileManager { const {offset, writeFilePromise, writeFileDeferred} = delayed.shift(); try { + checkCancel(); + // @ts-ignore const result = await r(dcId, location as any, offset, limit, id, options.queueId, checkCancel); @@ -471,7 +475,7 @@ export class ApiFileManager { deferred.resolve(fileWriter.finalize(size < MAX_FILE_SAVE_SIZE)); } } catch(err) { - errorHandler(err); + errorHandler(err as Error); } }; @@ -486,19 +490,16 @@ export class ApiFileManager { }); const checkCancel = () => { - if(canceled) { - const error = new Error('Canceled'); - // @ts-ignore - error.type = 'DOWNLOAD_CANCELED'; + if(error) { throw error; } }; deferred.cancel = () => { - if(!canceled && !resolved) { - canceled = true; - delete this.cachedDownloadPromises[fileName]; - errorHandler({type: 'DOWNLOAD_CANCELED'}); + if(!error && !resolved) { + const error = new Error('Canceled'); + error.type = 'DOWNLOAD_CANCELED'; + errorHandler(error); } }; @@ -508,7 +509,7 @@ export class ApiFileManager { this.cachedDownloadPromises[fileName] = deferred; - deferred.finally(() => { + deferred.safeFinally(() => { delete this.cachedDownloadPromises[fileName]; }); diff --git a/src/lib/mtproto/apiManager.ts b/src/lib/mtproto/apiManager.ts index 9ea03785..02c9c923 100644 --- a/src/lib/mtproto/apiManager.ts +++ b/src/lib/mtproto/apiManager.ts @@ -29,6 +29,7 @@ import { MOUNT_CLASS_TO } from '../../config/debug'; import IDBStorage from '../idb'; import CryptoWorker from "../crypto/cryptoworker"; import ctx from '../../environment/ctx'; +import noop from '../../helpers/noop'; /// #if !MTPROTO_WORKER import rootScope from '../rootScope'; @@ -348,7 +349,7 @@ export class ApiManager { //this.cachedUploadNetworkers[2].requestMessageStatus(); }, 5e3); - deferred.finally(() => { + deferred.catch(noop).finally(() => { clearInterval(interval); }); } diff --git a/src/lib/mtproto/authorizer.ts b/src/lib/mtproto/authorizer.ts index 6f6dadd3..9a0b85a5 100644 --- a/src/lib/mtproto/authorizer.ts +++ b/src/lib/mtproto/authorizer.ts @@ -21,6 +21,7 @@ import { bytesCmp, bytesToHex, bytesFromHex, bytesXor } from "../../helpers/byte import DEBUG from "../../config/debug"; import { cmp, int2bigInt, one, pow, str2bigInt, sub } from "../../vendor/leemon"; import { addPadding } from "./bin_utils"; +import { Awaited } from "../../types"; /* let fNewNonce: any = bytesFromHex('8761970c24cb2329b5b2459752c502f3057cb7e8dbab200e526e8767fdc73b3c').reverse(); let fNonce: any = bytesFromHex('b597720d11faa5914ef485c529cde414').reverse(); @@ -145,7 +146,7 @@ export class Authorizer { /* result = fResult ? fResult : result; fResult = new Uint8Array(0); */ - const deserializer = new TLDeserialization(result, {mtproto: true}); + const deserializer = new TLDeserialization(result, {mtproto: true}); if(result.length === 4) { const errorCode = deserializer.fetchInt(); @@ -188,7 +189,7 @@ export class Authorizer { this.log('Send req_pq', auth.nonce.hex); } - let deserializer: TLDeserialization; + let deserializer: Awaited>; try { const promise = this.sendPlainRequest(auth.dcId, request.getBytes(true)); rsaKeysManager.prepare(); @@ -313,7 +314,7 @@ export class Authorizer { this.log('Send req_DH_params', req_DH_params/* , requestBytes.hex */); } - let deserializer: TLDeserialization; + let deserializer: Awaited>; try { deserializer = await this.sendPlainRequest(auth.dcId, requestBytes); } catch(error) { @@ -376,7 +377,7 @@ export class Authorizer { const hash = answerWithHash.slice(0, 20); const answerWithPadding = answerWithHash.slice(20); - const deserializer = new TLDeserialization(answerWithPadding, {mtproto: true}); + const deserializer = new TLDeserialization(answerWithPadding, {mtproto: true}); const response = deserializer.fetchObject('Server_DH_inner_data'); if(response._ !== 'server_DH_inner_data') { @@ -494,7 +495,7 @@ export class Authorizer { this.log('Send set_client_DH_params'); } - let deserializer: TLDeserialization; + let deserializer: Awaited>; try { deserializer = await this.sendPlainRequest(auth.dcId, request.getBytes(true)); } catch(err) { diff --git a/src/lib/mtproto/mtproto_config.ts b/src/lib/mtproto/mtproto_config.ts index 1cc683e7..2c8d028c 100644 --- a/src/lib/mtproto/mtproto_config.ts +++ b/src/lib/mtproto/mtproto_config.ts @@ -4,11 +4,13 @@ * https://github.com/morethanwords/tweb/blob/master/LICENSE */ + /** * Legacy Webogram's format, don't change dcID to camelCase. date is timestamp */ -export type UserAuth = {dcID: number | string, date: number, id: number}; +export type UserAuth = {dcID: number | string, date: number, id: PeerId}; -export const REPLIES_PEER_ID = 1271266957; -export const SERVICE_PEER_ID = 777000; +export const NULL_PEER_ID: PeerId = 0; +export const REPLIES_PEER_ID: PeerId = 1271266957; +export const SERVICE_PEER_ID: PeerId = 777000; export const MUTE_UNTIL = 0x7FFFFFFF; diff --git a/src/lib/mtproto/mtprotoworker.ts b/src/lib/mtproto/mtprotoworker.ts index 49fdc526..6b52816e 100644 --- a/src/lib/mtproto/mtprotoworker.ts +++ b/src/lib/mtproto/mtprotoworker.ts @@ -7,7 +7,7 @@ import type { LocalStorageProxyTask, LocalStorageProxyTaskResponse } from '../localStorage'; //import type { LocalStorageProxyDeleteTask, LocalStorageProxySetTask } from '../storage'; import type { Awaited, InvokeApiOptions, WorkerTaskVoidTemplate } from '../../types'; -import type { Config, InputFile, MethodDeclMap } from '../../layer'; +import type { Config, InputFile, MethodDeclMap, User } from '../../layer'; import MTProtoWorker from 'worker-loader!./mtproto.worker'; //import './mtproto.worker'; import { isObject } from '../../helpers/object'; @@ -31,6 +31,7 @@ import telegramMeWebManager from './telegramMeWebManager'; import { CacheStorageDbName } from '../cacheStorage'; import { pause } from '../../helpers/schedulers/pause'; import IS_WEBP_SUPPORTED from '../../environment/webpSupport'; +import appUsersManager from '../appManagers/appUsersManager'; type Task = { taskId: number, @@ -553,15 +554,20 @@ export class ApiManagerProxy extends CryptoWorkerMethods { return this.performTaskWorker('setQueueId', queueId); } - public setUserAuth(userAuth: UserAuth | number) { - if(typeof(userAuth) === 'number') { - userAuth = {dcID: 0, date: Date.now() / 1000 | 0, id: userAuth}; + public setUserAuth(userAuth: UserAuth | UserId) { + if(typeof(userAuth) === 'string' || typeof(userAuth) === 'number') { + userAuth = {dcID: 0, date: Date.now() / 1000 | 0, id: userAuth.toPeerId(false)}; } rootScope.dispatchEvent('user_auth', userAuth); return this.performTaskWorker('setUserAuth', userAuth); } + public setUser(user: User) { + // appUsersManager.saveApiUser(user); + return this.setUserAuth(user.id); + } + public getNetworker(dc_id: number, options?: InvokeApiOptions) { return this.performTaskWorker('getNetworker', dc_id, options); } diff --git a/src/lib/mtproto/networker.ts b/src/lib/mtproto/networker.ts index 483a869d..83bff10f 100644 --- a/src/lib/mtproto/networker.ts +++ b/src/lib/mtproto/networker.ts @@ -25,6 +25,7 @@ import { nextRandomUint, randomLong } from '../../helpers/random'; import App from '../../config/app'; import DEBUG from '../../config/debug'; import Modes from '../../config/modes'; +import noop from '../../helpers/noop'; /// #if MTPROTO_HTTP_UPLOAD || MTPROTO_HTTP import HTTP from './transports/http'; @@ -43,11 +44,11 @@ export type MTMessageOptions = InvokeApiOptions & Partial<{ notContentRelated: true, // ACK noSchedule: true, - messageId: string, + messageId: MTLong, }>; export type MTMessage = InvokeApiOptions & MTMessageOptions & { - msg_id: string, + msg_id: MTLong, seq_no: number, body?: Uint8Array | number[], isAPI?: boolean, @@ -61,7 +62,7 @@ export type MTMessage = InvokeApiOptions & MTMessageOptions & { }, container?: boolean, - inner?: string[], + inner?: MTLong[], // below - options @@ -85,15 +86,15 @@ export default class MTPNetworker { private isFileUpload: boolean; private isFileDownload: boolean; - private lastServerMessages: Array = []; + private lastServerMessages: Array = []; private sentMessages: { - [msgId: string]: MTMessage + [msgId: MTLong]: MTMessage } = {}; - private pendingMessages: {[msgId: string]: number} = {}; - private pendingAcks: Array = []; - private pendingResends: Array = []; + private pendingMessages: {[msgId: MTLong]: number} = {}; + private pendingAcks: Array = []; + private pendingResends: Array = []; public connectionInited = false; private nextReqTimeout: number; @@ -114,8 +115,8 @@ export default class MTPNetworker { private serverSalt: Uint8Array; private lastResendReq: { - req_msg_id: string, - resend_msg_ids: Array + req_msg_id: MTLong, + resend_msg_ids: Array } | null = null; private name: string; @@ -711,7 +712,7 @@ export default class MTPNetworker { }); */ }, CONNECTION_TIMEOUT); - promise.finally(() => { + promise.catch(noop).finally(() => { clearTimeout(timeout); this.setConnectionStatus(ConnectionStatus.Connected); @@ -851,7 +852,7 @@ export default class MTPNetworker { } if(this.pendingAcks.length) { - const ackMsgIds: Array = this.pendingAcks.slice(); + const ackMsgIds = this.pendingAcks.slice(); // this.log('acking messages', ackMsgIDs) this.wrapMtpMessage({ @@ -864,7 +865,7 @@ export default class MTPNetworker { } if(this.pendingResends.length) { - const resendMsgIds: Array = this.pendingResends.slice(); + const resendMsgIds = this.pendingResends.slice(); const resendOpts: MTMessageOptions = { noSchedule: true, notContentRelated: true, @@ -1213,7 +1214,7 @@ export default class MTPNetworker { } // this.log('after msgKey check') - let deserializer = new TLDeserialization(dataWithPadding, {mtproto: true}); + let deserializer = new TLDeserialization(dataWithPadding, {mtproto: true}); /* const salt = */deserializer.fetchIntBytes(64, true, 'salt'); // need const sessionId = deserializer.fetchIntBytes(64, true, 'session_id'); @@ -1247,7 +1248,7 @@ export default class MTPNetworker { } //let buffer = bytesToArrayBuffer(messageBody); - deserializer = new TLDeserialization(/* buffer */messageBody, { + deserializer = new TLDeserialization(/* buffer */messageBody, { mtproto: true, override: { mt_message: (result: any, field: string) => { @@ -1376,7 +1377,7 @@ export default class MTPNetworker { } } - private ackMessage(msgId: string) { + private ackMessage(msgId: MTLong) { // this.log('ack message', msgID) this.pendingAcks.push(msgId); @@ -1387,7 +1388,7 @@ export default class MTPNetworker { /// #endif } - private reqResendMessage(msgId: string) { + private reqResendMessage(msgId: MTLong) { if(this.debug) { this.log.debug('Req resend', msgId); } @@ -1424,7 +1425,7 @@ export default class MTPNetworker { return !notEmpty; } - private processMessageAck(messageId: string) { + private processMessageAck(messageId: Long) { const sentMessage = this.sentMessages[messageId]; if(sentMessage && !sentMessage.acked) { //delete sentMessage.body; @@ -1477,12 +1478,14 @@ export default class MTPNetworker { } */ // * https://core.telegram.org/mtproto/service_messages_about_messages#notice-of-ignored-error-message - public processMessage(message: any, messageId: string, sessionId: Uint8Array | number[]) { + public processMessage(message: any, messageId: MTLong, sessionId: Uint8Array | number[]) { if(message._ === 'messageEmpty') { this.log.warn('processMessage: messageEmpty', message, messageId); return; } + // messageId = messageId.toString(); + const msgidInt = parseInt(messageId.substr(0, -10), 10); if(msgidInt % 2) { this.log.warn('Server even message id: ', messageId, message); diff --git a/src/lib/mtproto/passwordManager.ts b/src/lib/mtproto/passwordManager.ts index ad950d9a..011bd7b8 100644 --- a/src/lib/mtproto/passwordManager.ts +++ b/src/lib/mtproto/passwordManager.ts @@ -11,7 +11,6 @@ import type { AccountPassword, AccountUpdatePasswordSettings, InputCheckPasswordSRP, PasswordKdfAlgo } from '../../layer'; import { MOUNT_CLASS_TO } from '../../config/debug'; -import appUsersManager from '../appManagers/appUsersManager'; import apiManager from './mtprotoworker'; export class PasswordManager { @@ -80,8 +79,7 @@ export class PasswordManager { password: inputCheckPassword as InputCheckPasswordSRP.inputCheckPasswordSRP }, options).then(auth => { if(auth._ === 'auth.authorization') { - appUsersManager.saveApiUser(auth.user); - apiManager.setUserAuth(auth.user.id); + apiManager.setUser(auth.user); } return auth; diff --git a/src/lib/mtproto/referenceDatabase.ts b/src/lib/mtproto/referenceDatabase.ts index 178c9c9c..a925ba4c 100644 --- a/src/lib/mtproto/referenceDatabase.ts +++ b/src/lib/mtproto/referenceDatabase.ts @@ -18,12 +18,12 @@ export type ReferenceContext = ReferenceContext.referenceContextProfilePhoto | R export namespace ReferenceContext { export type referenceContextProfilePhoto = { type: 'profilePhoto', - peerId: number + peerId: PeerId }; export type referenceContextMessage = { type: 'message', - peerId: number, + peerId: PeerId, messageId: number }; } @@ -147,6 +147,8 @@ class ReferenceDatabase { return this.refreshReference(reference, newContext[0]); } + this.log.error('refreshReference: no new context, reference before:', hex, 'after:', newHex, context); + throw 'NO_NEW_CONTEXT'; }); } diff --git a/src/lib/mtproto/schema.ts b/src/lib/mtproto/schema.ts index 33db802e..e31bd235 100644 --- a/src/lib/mtproto/schema.ts +++ b/src/lib/mtproto/schema.ts @@ -24,7 +24,7 @@ export type MTProtoMethod = { type: string }; -export default {"MTProto":{"constructors":[{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":85337187,"predicate":"resPQ","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"pq","type":"bytes"},{"name":"server_public_key_fingerprints","type":"Vector"}],"type":"ResPQ"},{"id":-1443537003,"predicate":"p_q_inner_data_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"}],"type":"P_Q_inner_data"},{"id":1459478408,"predicate":"p_q_inner_data_temp_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"},{"name":"expires_in","type":"int"}],"type":"P_Q_inner_data"},{"id":-790100132,"predicate":"server_DH_params_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_answer","type":"bytes"}],"type":"Server_DH_Params"},{"id":-1249309254,"predicate":"server_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"g","type":"int"},{"name":"dh_prime","type":"bytes"},{"name":"g_a","type":"bytes"},{"name":"server_time","type":"int"}],"type":"Server_DH_inner_data"},{"id":1715713620,"predicate":"client_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"retry_id","type":"long"},{"name":"g_b","type":"bytes"}],"type":"Client_DH_Inner_Data"},{"id":1003222836,"predicate":"dh_gen_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash1","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1188831161,"predicate":"dh_gen_retry","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash2","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":-1499615742,"predicate":"dh_gen_fail","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash3","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1973679973,"predicate":"bind_auth_key_inner","params":[{"name":"nonce","type":"long"},{"name":"temp_auth_key_id","type":"long"},{"name":"perm_auth_key_id","type":"long"},{"name":"temp_session_id","type":"long"},{"name":"expires_at","type":"int"}],"type":"BindAuthKeyInner"},{"id":-212046591,"predicate":"rpc_result","params":[{"name":"req_msg_id","type":"long"},{"name":"result","type":"Object"}],"type":"RpcResult"},{"id":558156313,"predicate":"rpc_error","params":[{"name":"error_code","type":"int"},{"name":"error_message","type":"string"}],"type":"RpcError"},{"id":1579864942,"predicate":"rpc_answer_unknown","params":[],"type":"RpcDropAnswer"},{"id":-847714938,"predicate":"rpc_answer_dropped_running","params":[],"type":"RpcDropAnswer"},{"id":-1539647305,"predicate":"rpc_answer_dropped","params":[{"name":"msg_id","type":"long"},{"name":"seq_no","type":"int"},{"name":"bytes","type":"int"}],"type":"RpcDropAnswer"},{"id":155834844,"predicate":"future_salt","params":[{"name":"valid_since","type":"int"},{"name":"valid_until","type":"int"},{"name":"salt","type":"long"}],"type":"FutureSalt"},{"id":-1370486635,"predicate":"future_salts","params":[{"name":"req_msg_id","type":"long"},{"name":"now","type":"int"},{"name":"salts","type":"vector"}],"type":"FutureSalts"},{"id":880243653,"predicate":"pong","params":[{"name":"msg_id","type":"long"},{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-501201412,"predicate":"destroy_session_ok","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":1658015945,"predicate":"destroy_session_none","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1631450872,"predicate":"new_session_created","params":[{"name":"first_msg_id","type":"long"},{"name":"unique_id","type":"long"},{"name":"server_salt","type":"long"}],"type":"NewSession"},{"id":1945237724,"predicate":"msg_container","params":[{"name":"messages","type":"vector<%Message>"}],"type":"MessageContainer"},{"id":1538843921,"predicate":"message","params":[{"name":"msg_id","type":"long"},{"name":"seqno","type":"int"},{"name":"bytes","type":"int"},{"name":"body","type":"Object"}],"type":"Message"},{"id":-530561358,"predicate":"msg_copy","params":[{"name":"orig_message","type":"Message"}],"type":"MessageCopy"},{"id":812830625,"predicate":"gzip_packed","params":[{"name":"packed_data","type":"bytes"}],"type":"Object"},{"id":1658238041,"predicate":"msgs_ack","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsAck"},{"id":-1477445615,"predicate":"bad_msg_notification","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"}],"type":"BadMsgNotification"},{"id":-307542917,"predicate":"bad_server_salt","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"},{"name":"new_server_salt","type":"long"}],"type":"BadMsgNotification"},{"id":2105940488,"predicate":"msg_resend_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgResendReq"},{"id":-630588590,"predicate":"msgs_state_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsStateReq"},{"id":81704317,"predicate":"msgs_state_info","params":[{"name":"req_msg_id","type":"long"},{"name":"info","type":"bytes"}],"type":"MsgsStateInfo"},{"id":-1933520591,"predicate":"msgs_all_info","params":[{"name":"msg_ids","type":"Vector"},{"name":"info","type":"bytes"}],"type":"MsgsAllInfo"},{"id":661470918,"predicate":"msg_detailed_info","params":[{"name":"msg_id","type":"long"},{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-2137147681,"predicate":"msg_new_detailed_info","params":[{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-161422892,"predicate":"destroy_auth_key_ok","params":[],"type":"DestroyAuthKeyRes"},{"id":178201177,"predicate":"destroy_auth_key_none","params":[],"type":"DestroyAuthKeyRes"},{"id":-368010477,"predicate":"destroy_auth_key_fail","params":[],"type":"DestroyAuthKeyRes"}],"methods":[{"id":-1099002127,"method":"req_pq_multi","params":[{"name":"nonce","type":"int128"}],"type":"ResPQ"},{"id":-686627650,"method":"req_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"public_key_fingerprint","type":"long"},{"name":"encrypted_data","type":"bytes"}],"type":"Server_DH_Params"},{"id":-184262881,"method":"set_client_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_data","type":"bytes"}],"type":"Set_client_DH_params_answer"},{"id":1491380032,"method":"rpc_drop_answer","params":[{"name":"req_msg_id","type":"long"}],"type":"RpcDropAnswer"},{"id":-1188971260,"method":"get_future_salts","params":[{"name":"num","type":"int"}],"type":"FutureSalts"},{"id":2059302892,"method":"ping","params":[{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-213746804,"method":"ping_delay_disconnect","params":[{"name":"ping_id","type":"long"},{"name":"disconnect_delay","type":"int"}],"type":"Pong"},{"id":-414113498,"method":"destroy_session","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1835453025,"method":"http_wait","params":[{"name":"max_delay","type":"int"},{"name":"wait_after","type":"int"},{"name":"max_wait","type":"int"}],"type":"HttpWait"},{"id":-784117408,"method":"destroy_auth_key","params":[],"type":"DestroyAuthKeyRes"}]},"API":{"constructors":[{"id":-1132882121,"predicate":"boolFalse","params":[],"type":"Bool"},{"id":-1720552011,"predicate":"boolTrue","params":[],"type":"Bool"},{"id":1072550713,"predicate":"true","params":[],"type":"True"},{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":-994444869,"predicate":"error","params":[{"name":"code","type":"int"},{"name":"text","type":"string"}],"type":"Error"},{"id":1450380236,"predicate":"null","params":[],"type":"Null"},{"id":2134579434,"predicate":"inputPeerEmpty","params":[],"type":"InputPeer"},{"id":2107670217,"predicate":"inputPeerSelf","params":[],"type":"InputPeer"},{"id":396093539,"predicate":"inputPeerChat","params":[{"name":"chat_id","type":"int"}],"type":"InputPeer"},{"id":-1182234929,"predicate":"inputUserEmpty","params":[],"type":"InputUser"},{"id":-138301121,"predicate":"inputUserSelf","params":[],"type":"InputUser"},{"id":-208488460,"predicate":"inputPhoneContact","params":[{"name":"client_id","type":"long"},{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"InputContact"},{"id":-181407105,"predicate":"inputFile","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"},{"name":"md5_checksum","type":"string"}],"type":"InputFile"},{"id":-1771768449,"predicate":"inputMediaEmpty","params":[],"type":"InputMedia"},{"id":505969924,"predicate":"inputMediaUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":-1279654347,"predicate":"inputMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputPhoto"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-104578748,"predicate":"inputMediaGeoPoint","params":[{"name":"geo_point","type":"InputGeoPoint"}],"type":"InputMedia"},{"id":-122978821,"predicate":"inputMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"}],"type":"InputMedia"},{"id":480546647,"predicate":"inputChatPhotoEmpty","params":[],"type":"InputChatPhoto"},{"id":-968723890,"predicate":"inputChatUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"InputChatPhoto"},{"id":-1991004873,"predicate":"inputChatPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputChatPhoto"},{"id":-457104426,"predicate":"inputGeoPointEmpty","params":[],"type":"InputGeoPoint"},{"id":1210199983,"predicate":"inputGeoPoint","params":[{"name":"flags","type":"#"},{"name":"lat","type":"double"},{"name":"long","type":"double"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"InputGeoPoint"},{"id":483901197,"predicate":"inputPhotoEmpty","params":[],"type":"InputPhoto"},{"id":1001634122,"predicate":"inputPhoto","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputPhoto"},{"id":-539317279,"predicate":"inputFileLocation","params":[{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputFileLocation"},{"id":-1649296275,"predicate":"peerUser","params":[{"name":"user_id","type":"int"}],"type":"Peer"},{"id":-1160714821,"predicate":"peerChat","params":[{"name":"chat_id","type":"int"}],"type":"Peer"},{"id":-1432995067,"predicate":"storage.fileUnknown","params":[],"type":"storage.FileType"},{"id":1086091090,"predicate":"storage.filePartial","params":[],"type":"storage.FileType"},{"id":8322574,"predicate":"storage.fileJpeg","params":[],"type":"storage.FileType"},{"id":-891180321,"predicate":"storage.fileGif","params":[],"type":"storage.FileType"},{"id":172975040,"predicate":"storage.filePng","params":[],"type":"storage.FileType"},{"id":-1373745011,"predicate":"storage.filePdf","params":[],"type":"storage.FileType"},{"id":1384777335,"predicate":"storage.fileMp3","params":[],"type":"storage.FileType"},{"id":1258941372,"predicate":"storage.fileMov","params":[],"type":"storage.FileType"},{"id":-1278304028,"predicate":"storage.fileMp4","params":[],"type":"storage.FileType"},{"id":276907596,"predicate":"storage.fileWebp","params":[],"type":"storage.FileType"},{"id":537022650,"predicate":"userEmpty","params":[{"name":"id","type":"int"}],"type":"User"},{"id":1326562017,"predicate":"userProfilePhotoEmpty","params":[],"type":"UserProfilePhoto"},{"id":-2100168954,"predicate":"userProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"UserProfilePhoto"},{"id":164646985,"predicate":"userStatusEmpty","params":[],"type":"UserStatus"},{"id":-306628279,"predicate":"userStatusOnline","params":[{"name":"expires","type":"int"}],"type":"UserStatus"},{"id":9203775,"predicate":"userStatusOffline","params":[{"name":"was_online","type":"int"}],"type":"UserStatus"},{"id":-1683826688,"predicate":"chatEmpty","params":[{"name":"id","type":"int"}],"type":"Chat"},{"id":1004149726,"predicate":"chat","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"kicked","type":"flags.1?true"},{"name":"left","type":"flags.2?true"},{"name":"deactivated","type":"flags.5?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"ChatPhoto"},{"name":"participants_count","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"migrated_to","type":"flags.6?InputChannel"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"}],"type":"Chat"},{"id":120753115,"predicate":"chatForbidden","params":[{"name":"id","type":"int"},{"name":"title","type":"string"}],"type":"Chat"},{"id":-1977734781,"predicate":"chatFull","params":[{"name":"flags","type":"#"},{"name":"can_set_username","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.8?true"},{"name":"id","type":"int"},{"name":"about","type":"string"},{"name":"participants","type":"ChatParticipants"},{"name":"chat_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.13?ExportedChatInvite"},{"name":"bot_info","type":"flags.3?Vector"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"call","type":"flags.12?InputGroupCall"},{"name":"ttl_period","type":"flags.14?int"},{"name":"groupcall_default_join_as","type":"flags.15?Peer"}],"type":"ChatFull"},{"id":-925415106,"predicate":"chatParticipant","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-57668565,"predicate":"chatParticipantsForbidden","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"int"},{"name":"self_participant","type":"flags.0?ChatParticipant"}],"type":"ChatParticipants"},{"id":1061556205,"predicate":"chatParticipants","params":[{"name":"chat_id","type":"int"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"ChatParticipants"},{"id":935395612,"predicate":"chatPhotoEmpty","params":[],"type":"ChatPhoto"},{"id":476978193,"predicate":"chatPhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"ChatPhoto"},{"id":-1868117372,"predicate":"messageEmpty","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"peer_id","type":"flags.0?Peer"}],"type":"Message"},{"id":-1125940270,"predicate":"message","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"from_scheduled","type":"flags.18?true"},{"name":"legacy","type":"flags.19?true"},{"name":"edit_hide","type":"flags.21?true"},{"name":"pinned","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"message","type":"string"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"reply_markup","type":"flags.6?ReplyMarkup"},{"name":"entities","type":"flags.7?Vector"},{"name":"views","type":"flags.10?int"},{"name":"forwards","type":"flags.10?int"},{"name":"replies","type":"flags.23?MessageReplies"},{"name":"edit_date","type":"flags.15?int"},{"name":"post_author","type":"flags.16?string"},{"name":"grouped_id","type":"flags.17?long"},{"name":"restriction_reason","type":"flags.22?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":721967202,"predicate":"messageService","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"legacy","type":"flags.19?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"action","type":"MessageAction"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":1038967584,"predicate":"messageMediaEmpty","params":[],"type":"MessageMedia"},{"id":1766936791,"predicate":"messageMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"photo","type":"flags.0?Photo"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1457575028,"predicate":"messageMediaGeo","params":[{"name":"geo","type":"GeoPoint"}],"type":"MessageMedia"},{"id":-873313984,"predicate":"messageMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"user_id","type":"int"}],"type":"MessageMedia"},{"id":-1618676578,"predicate":"messageMediaUnsupported","params":[],"type":"MessageMedia"},{"id":-1230047312,"predicate":"messageActionEmpty","params":[],"type":"MessageAction"},{"id":-1503425638,"predicate":"messageActionChatCreate","params":[{"name":"title","type":"string"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1247687078,"predicate":"messageActionChatEditTitle","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":2144015272,"predicate":"messageActionChatEditPhoto","params":[{"name":"photo","type":"Photo"}],"type":"MessageAction"},{"id":-1780220945,"predicate":"messageActionChatDeletePhoto","params":[],"type":"MessageAction"},{"id":1217033015,"predicate":"messageActionChatAddUser","params":[{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1297179892,"predicate":"messageActionChatDeleteUser","params":[{"name":"user_id","type":"int"}],"type":"MessageAction"},{"id":739712882,"predicate":"dialog","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"unread_mark","type":"flags.3?true"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"unread_mentions_count","type":"int"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"pts","type":"flags.0?int"},{"name":"draft","type":"flags.1?DraftMessage"},{"name":"folder_id","type":"flags.4?int"}],"type":"Dialog"},{"id":590459437,"predicate":"photoEmpty","params":[{"name":"id","type":"long"}],"type":"Photo"},{"id":-82216347,"predicate":"photo","params":[{"name":"flags","type":"#"},{"name":"has_stickers","type":"flags.0?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"sizes","type":"Vector"},{"name":"video_sizes","type":"flags.1?Vector"},{"name":"dc_id","type":"int"}],"type":"Photo"},{"id":236446268,"predicate":"photoSizeEmpty","params":[{"name":"type","type":"string"}],"type":"PhotoSize"},{"id":1976012384,"predicate":"photoSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"}],"type":"PhotoSize"},{"id":35527382,"predicate":"photoCachedSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":286776671,"predicate":"geoPointEmpty","params":[],"type":"GeoPoint"},{"id":-1297942941,"predicate":"geoPoint","params":[{"name":"flags","type":"#"},{"name":"long","type":"double"},{"name":"lat","type":"double"},{"name":"access_hash","type":"long"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"GeoPoint"},{"id":1577067778,"predicate":"auth.sentCode","params":[{"name":"flags","type":"#"},{"name":"type","type":"auth.SentCodeType"},{"name":"phone_code_hash","type":"string"},{"name":"next_type","type":"flags.1?auth.CodeType"},{"name":"timeout","type":"flags.2?int"}],"type":"auth.SentCode"},{"id":-855308010,"predicate":"auth.authorization","params":[{"name":"flags","type":"#"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"user","type":"User"}],"type":"auth.Authorization"},{"id":-543777747,"predicate":"auth.exportedAuthorization","params":[{"name":"id","type":"int"},{"name":"bytes","type":"bytes"}],"type":"auth.ExportedAuthorization"},{"id":-1195615476,"predicate":"inputNotifyPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputNotifyPeer"},{"id":423314455,"predicate":"inputNotifyUsers","params":[],"type":"InputNotifyPeer"},{"id":1251338318,"predicate":"inputNotifyChats","params":[],"type":"InputNotifyPeer"},{"id":-1673717362,"predicate":"inputPeerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"InputPeerNotifySettings"},{"id":-1353671392,"predicate":"peerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"PeerNotifySettings"},{"id":1933519201,"predicate":"peerSettings","params":[{"name":"flags","type":"#"},{"name":"report_spam","type":"flags.0?true"},{"name":"add_contact","type":"flags.1?true"},{"name":"block_contact","type":"flags.2?true"},{"name":"share_contact","type":"flags.3?true"},{"name":"need_contacts_exception","type":"flags.4?true"},{"name":"report_geo","type":"flags.5?true"},{"name":"autoarchived","type":"flags.7?true"},{"name":"invite_members","type":"flags.8?true"},{"name":"geo_distance","type":"flags.6?int"}],"type":"PeerSettings"},{"id":-1539849235,"predicate":"wallPaper","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"pattern","type":"flags.3?true"},{"name":"dark","type":"flags.4?true"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"document","type":"Document"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":1490799288,"predicate":"inputReportReasonSpam","params":[],"type":"ReportReason"},{"id":505595789,"predicate":"inputReportReasonViolence","params":[],"type":"ReportReason"},{"id":777640226,"predicate":"inputReportReasonPornography","params":[],"type":"ReportReason"},{"id":-1376497949,"predicate":"inputReportReasonChildAbuse","params":[],"type":"ReportReason"},{"id":-1041980751,"predicate":"inputReportReasonOther","params":[],"type":"ReportReason"},{"id":328899191,"predicate":"userFull","params":[{"name":"flags","type":"#"},{"name":"blocked","type":"flags.0?true"},{"name":"phone_calls_available","type":"flags.4?true"},{"name":"phone_calls_private","type":"flags.5?true"},{"name":"can_pin_message","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.12?true"},{"name":"video_calls_available","type":"flags.13?true"},{"name":"user","type":"User"},{"name":"about","type":"flags.1?string"},{"name":"settings","type":"PeerSettings"},{"name":"profile_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"bot_info","type":"flags.3?BotInfo"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"common_chats_count","type":"int"},{"name":"folder_id","type":"flags.11?int"},{"name":"ttl_period","type":"flags.14?int"}],"type":"UserFull"},{"id":-116274796,"predicate":"contact","params":[{"name":"user_id","type":"int"},{"name":"mutual","type":"Bool"}],"type":"Contact"},{"id":-805141448,"predicate":"importedContact","params":[{"name":"user_id","type":"int"},{"name":"client_id","type":"long"}],"type":"ImportedContact"},{"id":-748155807,"predicate":"contactStatus","params":[{"name":"user_id","type":"int"},{"name":"status","type":"UserStatus"}],"type":"ContactStatus"},{"id":-1219778094,"predicate":"contacts.contactsNotModified","params":[],"type":"contacts.Contacts"},{"id":-353862078,"predicate":"contacts.contacts","params":[{"name":"contacts","type":"Vector"},{"name":"saved_count","type":"int"},{"name":"users","type":"Vector"}],"type":"contacts.Contacts"},{"id":2010127419,"predicate":"contacts.importedContacts","params":[{"name":"imported","type":"Vector"},{"name":"popular_invites","type":"Vector"},{"name":"retry_contacts","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":182326673,"predicate":"contacts.blocked","params":[{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":-513392236,"predicate":"contacts.blockedSlice","params":[{"name":"count","type":"int"},{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":364538944,"predicate":"messages.dialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":1910543603,"predicate":"messages.dialogsSlice","params":[{"name":"count","type":"int"},{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":-1938715001,"predicate":"messages.messages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":978610270,"predicate":"messages.messagesSlice","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"count","type":"int"},{"name":"next_rate","type":"flags.0?int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1694474197,"predicate":"messages.chats","params":[{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-438840932,"predicate":"messages.chatFull","params":[{"name":"full_chat","type":"ChatFull"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatFull"},{"id":-1269012015,"predicate":"messages.affectedHistory","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"}],"type":"messages.AffectedHistory"},{"id":1474492012,"predicate":"inputMessagesFilterEmpty","params":[],"type":"MessagesFilter"},{"id":-1777752804,"predicate":"inputMessagesFilterPhotos","params":[],"type":"MessagesFilter"},{"id":-1614803355,"predicate":"inputMessagesFilterVideo","params":[],"type":"MessagesFilter"},{"id":1458172132,"predicate":"inputMessagesFilterPhotoVideo","params":[],"type":"MessagesFilter"},{"id":-1629621880,"predicate":"inputMessagesFilterDocument","params":[],"type":"MessagesFilter"},{"id":2129714567,"predicate":"inputMessagesFilterUrl","params":[],"type":"MessagesFilter"},{"id":-3644025,"predicate":"inputMessagesFilterGif","params":[],"type":"MessagesFilter"},{"id":522914557,"predicate":"updateNewMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1318109142,"predicate":"updateMessageID","params":[{"name":"id","type":"int"},{"name":"random_id","type":"long"}],"type":"Update"},{"id":-1576161051,"predicate":"updateDeleteMessages","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1548249383,"predicate":"updateUserTyping","params":[{"name":"user_id","type":"int"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-2033525908,"predicate":"updateChatUserTyping","params":[{"name":"chat_id","type":"int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":125178264,"predicate":"updateChatParticipants","params":[{"name":"participants","type":"ChatParticipants"}],"type":"Update"},{"id":469489699,"predicate":"updateUserStatus","params":[{"name":"user_id","type":"int"},{"name":"status","type":"UserStatus"}],"type":"Update"},{"id":-1489818765,"predicate":"updateUserName","params":[{"name":"user_id","type":"int"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"username","type":"string"}],"type":"Update"},{"id":-1791935732,"predicate":"updateUserPhoto","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"},{"name":"photo","type":"UserProfilePhoto"},{"name":"previous","type":"Bool"}],"type":"Update"},{"id":-1519637954,"predicate":"updates.state","params":[{"name":"pts","type":"int"},{"name":"qts","type":"int"},{"name":"date","type":"int"},{"name":"seq","type":"int"},{"name":"unread_count","type":"int"}],"type":"updates.State"},{"id":1567990072,"predicate":"updates.differenceEmpty","params":[{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"updates.Difference"},{"id":16030880,"predicate":"updates.difference","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"updates.Difference"},{"id":-1459938943,"predicate":"updates.differenceSlice","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"intermediate_state","type":"updates.State"}],"type":"updates.Difference"},{"id":-484987010,"predicate":"updatesTooLong","params":[],"type":"Updates"},{"id":-84936653,"predicate":"updateShortMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"user_id","type":"int"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":290961496,"predicate":"updateShortChatMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"from_id","type":"int"},{"name":"chat_id","type":"int"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":2027216577,"predicate":"updateShort","params":[{"name":"update","type":"Update"},{"name":"date","type":"int"}],"type":"Updates"},{"id":1918567619,"predicate":"updatesCombined","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq_start","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":1957577280,"predicate":"updates","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":-1916114267,"predicate":"photos.photos","params":[{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":352657236,"predicate":"photos.photosSlice","params":[{"name":"count","type":"int"},{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":539045032,"predicate":"photos.photo","params":[{"name":"photo","type":"Photo"},{"name":"users","type":"Vector"}],"type":"photos.Photo"},{"id":157948117,"predicate":"upload.file","params":[{"name":"type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.File"},{"id":414687501,"predicate":"dcOption","params":[{"name":"flags","type":"#"},{"name":"ipv6","type":"flags.0?true"},{"name":"media_only","type":"flags.1?true"},{"name":"tcpo_only","type":"flags.2?true"},{"name":"cdn","type":"flags.3?true"},{"name":"static","type":"flags.4?true"},{"name":"id","type":"int"},{"name":"ip_address","type":"string"},{"name":"port","type":"int"},{"name":"secret","type":"flags.10?bytes"}],"type":"DcOption"},{"id":856375399,"predicate":"config","params":[{"name":"flags","type":"#"},{"name":"phonecalls_enabled","type":"flags.1?true"},{"name":"default_p2p_contacts","type":"flags.3?true"},{"name":"preload_featured_stickers","type":"flags.4?true"},{"name":"ignore_phone_entities","type":"flags.5?true"},{"name":"revoke_pm_inbox","type":"flags.6?true"},{"name":"blocked_mode","type":"flags.8?true"},{"name":"pfs_enabled","type":"flags.13?true"},{"name":"date","type":"int"},{"name":"expires","type":"int"},{"name":"test_mode","type":"Bool"},{"name":"this_dc","type":"int"},{"name":"dc_options","type":"Vector"},{"name":"dc_txt_domain_name","type":"string"},{"name":"chat_size_max","type":"int"},{"name":"megagroup_size_max","type":"int"},{"name":"forwarded_count_max","type":"int"},{"name":"online_update_period_ms","type":"int"},{"name":"offline_blur_timeout_ms","type":"int"},{"name":"offline_idle_timeout_ms","type":"int"},{"name":"online_cloud_timeout_ms","type":"int"},{"name":"notify_cloud_delay_ms","type":"int"},{"name":"notify_default_delay_ms","type":"int"},{"name":"push_chat_period_ms","type":"int"},{"name":"push_chat_limit","type":"int"},{"name":"saved_gifs_limit","type":"int"},{"name":"edit_time_limit","type":"int"},{"name":"revoke_time_limit","type":"int"},{"name":"revoke_pm_time_limit","type":"int"},{"name":"rating_e_decay","type":"int"},{"name":"stickers_recent_limit","type":"int"},{"name":"stickers_faved_limit","type":"int"},{"name":"channels_read_media_period","type":"int"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"pinned_dialogs_count_max","type":"int"},{"name":"pinned_infolder_count_max","type":"int"},{"name":"call_receive_timeout_ms","type":"int"},{"name":"call_ring_timeout_ms","type":"int"},{"name":"call_connect_timeout_ms","type":"int"},{"name":"call_packet_timeout_ms","type":"int"},{"name":"me_url_prefix","type":"string"},{"name":"autoupdate_url_prefix","type":"flags.7?string"},{"name":"gif_search_username","type":"flags.9?string"},{"name":"venue_search_username","type":"flags.10?string"},{"name":"img_search_username","type":"flags.11?string"},{"name":"static_maps_provider","type":"flags.12?string"},{"name":"caption_length_max","type":"int"},{"name":"message_length_max","type":"int"},{"name":"webfile_dc_id","type":"int"},{"name":"suggested_lang_code","type":"flags.2?string"},{"name":"lang_pack_version","type":"flags.2?int"},{"name":"base_lang_pack_version","type":"flags.2?int"}],"type":"Config"},{"id":-1910892683,"predicate":"nearestDc","params":[{"name":"country","type":"string"},{"name":"this_dc","type":"int"},{"name":"nearest_dc","type":"int"}],"type":"NearestDc"},{"id":-860107216,"predicate":"help.appUpdate","params":[{"name":"flags","type":"#"},{"name":"can_not_skip","type":"flags.0?true"},{"name":"id","type":"int"},{"name":"version","type":"string"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"document","type":"flags.1?Document"},{"name":"url","type":"flags.2?string"},{"name":"sticker","type":"flags.3?Document"}],"type":"help.AppUpdate"},{"id":-1000708810,"predicate":"help.noAppUpdate","params":[],"type":"help.AppUpdate"},{"id":415997816,"predicate":"help.inviteText","params":[{"name":"message","type":"string"}],"type":"help.InviteText"},{"id":314359194,"predicate":"updateNewEncryptedMessage","params":[{"name":"message","type":"EncryptedMessage"},{"name":"qts","type":"int"}],"type":"Update"},{"id":386986326,"predicate":"updateEncryptedChatTyping","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":-1264392051,"predicate":"updateEncryption","params":[{"name":"chat","type":"EncryptedChat"},{"name":"date","type":"int"}],"type":"Update"},{"id":956179895,"predicate":"updateEncryptedMessagesRead","params":[{"name":"chat_id","type":"int"},{"name":"max_date","type":"int"},{"name":"date","type":"int"}],"type":"Update"},{"id":-1417756512,"predicate":"encryptedChatEmpty","params":[{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":1006044124,"predicate":"encryptedChatWaiting","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"}],"type":"EncryptedChat"},{"id":1651608194,"predicate":"encryptedChatRequested","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":-94974410,"predicate":"encryptedChat","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":505183301,"predicate":"encryptedChatDiscarded","params":[{"name":"flags","type":"#"},{"name":"history_deleted","type":"flags.0?true"},{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":-247351839,"predicate":"inputEncryptedChat","params":[{"name":"chat_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedChat"},{"id":-1038136962,"predicate":"encryptedFileEmpty","params":[],"type":"EncryptedFile"},{"id":1248893260,"predicate":"encryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"EncryptedFile"},{"id":406307684,"predicate":"inputEncryptedFileEmpty","params":[],"type":"InputEncryptedFile"},{"id":1690108678,"predicate":"inputEncryptedFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":1511503333,"predicate":"inputEncryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedFile"},{"id":-182231723,"predicate":"inputEncryptedFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":-317144808,"predicate":"encryptedMessage","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"},{"name":"file","type":"EncryptedFile"}],"type":"EncryptedMessage"},{"id":594758406,"predicate":"encryptedMessageService","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"}],"type":"EncryptedMessage"},{"id":-1058912715,"predicate":"messages.dhConfigNotModified","params":[{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":740433629,"predicate":"messages.dhConfig","params":[{"name":"g","type":"int"},{"name":"p","type":"bytes"},{"name":"version","type":"int"},{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":1443858741,"predicate":"messages.sentEncryptedMessage","params":[{"name":"date","type":"int"}],"type":"messages.SentEncryptedMessage"},{"id":-1802240206,"predicate":"messages.sentEncryptedFile","params":[{"name":"date","type":"int"},{"name":"file","type":"EncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":-95482955,"predicate":"inputFileBig","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"}],"type":"InputFile"},{"id":767652808,"predicate":"inputEncryptedFileBigUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":-364179876,"predicate":"updateChatParticipantAdd","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":1851755554,"predicate":"updateChatParticipantDelete","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":-1906403213,"predicate":"updateDcOptions","params":[{"name":"dc_options","type":"Vector"}],"type":"Update"},{"id":1530447553,"predicate":"inputMediaUploadedDocument","params":[{"name":"flags","type":"#"},{"name":"nosound_video","type":"flags.3?true"},{"name":"force_file","type":"flags.4?true"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.2?InputFile"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":860303448,"predicate":"inputMediaDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputDocument"},{"name":"ttl_seconds","type":"flags.0?int"},{"name":"query","type":"flags.1?string"}],"type":"InputMedia"},{"id":-1666158377,"predicate":"messageMediaDocument","params":[{"name":"flags","type":"#"},{"name":"document","type":"flags.0?Document"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1928391342,"predicate":"inputDocumentEmpty","params":[],"type":"InputDocument"},{"id":448771445,"predicate":"inputDocument","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputDocument"},{"id":-1160743548,"predicate":"inputDocumentFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":922273905,"predicate":"documentEmpty","params":[{"name":"id","type":"long"}],"type":"Document"},{"id":512177195,"predicate":"document","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"mime_type","type":"string"},{"name":"size","type":"int"},{"name":"thumbs","type":"flags.0?Vector"},{"name":"video_thumbs","type":"flags.1?Vector"},{"name":"dc_id","type":"int"},{"name":"attributes","type":"Vector"}],"type":"Document"},{"id":398898678,"predicate":"help.support","params":[{"name":"phone_number","type":"string"},{"name":"user","type":"User"}],"type":"help.Support"},{"id":-1613493288,"predicate":"notifyPeer","params":[{"name":"peer","type":"Peer"}],"type":"NotifyPeer"},{"id":-1261946036,"predicate":"notifyUsers","params":[],"type":"NotifyPeer"},{"id":-1073230141,"predicate":"notifyChats","params":[],"type":"NotifyPeer"},{"id":-1094555409,"predicate":"updateNotifySettings","params":[{"name":"peer","type":"NotifyPeer"},{"name":"notify_settings","type":"PeerNotifySettings"}],"type":"Update"},{"id":381645902,"predicate":"sendMessageTypingAction","params":[],"type":"SendMessageAction"},{"id":-44119819,"predicate":"sendMessageCancelAction","params":[],"type":"SendMessageAction"},{"id":-1584933265,"predicate":"sendMessageRecordVideoAction","params":[],"type":"SendMessageAction"},{"id":-378127636,"predicate":"sendMessageUploadVideoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-718310409,"predicate":"sendMessageRecordAudioAction","params":[],"type":"SendMessageAction"},{"id":-212740181,"predicate":"sendMessageUploadAudioAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-774682074,"predicate":"sendMessageUploadPhotoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-1441998364,"predicate":"sendMessageUploadDocumentAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":393186209,"predicate":"sendMessageGeoLocationAction","params":[],"type":"SendMessageAction"},{"id":1653390447,"predicate":"sendMessageChooseContactAction","params":[],"type":"SendMessageAction"},{"id":-1290580579,"predicate":"contacts.found","params":[{"name":"my_results","type":"Vector"},{"name":"results","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Found"},{"id":-337352679,"predicate":"updateServiceNotification","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"inbox_date","type":"flags.1?int"},{"name":"type","type":"string"},{"name":"message","type":"string"},{"name":"media","type":"MessageMedia"},{"name":"entities","type":"Vector"}],"type":"Update"},{"id":-496024847,"predicate":"userStatusRecently","params":[],"type":"UserStatus"},{"id":129960444,"predicate":"userStatusLastWeek","params":[],"type":"UserStatus"},{"id":2011940674,"predicate":"userStatusLastMonth","params":[],"type":"UserStatus"},{"id":-298113238,"predicate":"updatePrivacy","params":[{"name":"key","type":"PrivacyKey"},{"name":"rules","type":"Vector"}],"type":"Update"},{"id":1335282456,"predicate":"inputPrivacyKeyStatusTimestamp","params":[],"type":"InputPrivacyKey"},{"id":-1137792208,"predicate":"privacyKeyStatusTimestamp","params":[],"type":"PrivacyKey"},{"id":218751099,"predicate":"inputPrivacyValueAllowContacts","params":[],"type":"InputPrivacyRule"},{"id":407582158,"predicate":"inputPrivacyValueAllowAll","params":[],"type":"InputPrivacyRule"},{"id":320652927,"predicate":"inputPrivacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":195371015,"predicate":"inputPrivacyValueDisallowContacts","params":[],"type":"InputPrivacyRule"},{"id":-697604407,"predicate":"inputPrivacyValueDisallowAll","params":[],"type":"InputPrivacyRule"},{"id":-1877932953,"predicate":"inputPrivacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-123988,"predicate":"privacyValueAllowContacts","params":[],"type":"PrivacyRule"},{"id":1698855810,"predicate":"privacyValueAllowAll","params":[],"type":"PrivacyRule"},{"id":1297858060,"predicate":"privacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":-125240806,"predicate":"privacyValueDisallowContacts","params":[],"type":"PrivacyRule"},{"id":-1955338397,"predicate":"privacyValueDisallowAll","params":[],"type":"PrivacyRule"},{"id":209668535,"predicate":"privacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":1352683077,"predicate":"account.privacyRules","params":[{"name":"rules","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.PrivacyRules"},{"id":-1194283041,"predicate":"accountDaysTTL","params":[{"name":"days","type":"int"}],"type":"AccountDaysTTL"},{"id":314130811,"predicate":"updateUserPhone","params":[{"name":"user_id","type":"int"},{"name":"phone","type":"string"}],"type":"Update"},{"id":1815593308,"predicate":"documentAttributeImageSize","params":[{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":297109817,"predicate":"documentAttributeAnimated","params":[],"type":"DocumentAttribute"},{"id":1662637586,"predicate":"documentAttributeSticker","params":[{"name":"flags","type":"#"},{"name":"mask","type":"flags.1?true"},{"name":"alt","type":"string"},{"name":"stickerset","type":"InputStickerSet"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"DocumentAttribute"},{"id":250621158,"predicate":"documentAttributeVideo","params":[{"name":"flags","type":"#"},{"name":"round_message","type":"flags.0?true"},{"name":"supports_streaming","type":"flags.1?true"},{"name":"duration","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":-1739392570,"predicate":"documentAttributeAudio","params":[{"name":"flags","type":"#"},{"name":"voice","type":"flags.10?true"},{"name":"duration","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"performer","type":"flags.1?string"},{"name":"waveform","type":"flags.2?bytes"}],"type":"DocumentAttribute"},{"id":358154344,"predicate":"documentAttributeFilename","params":[{"name":"file_name","type":"string"}],"type":"DocumentAttribute"},{"id":-244016606,"predicate":"messages.stickersNotModified","params":[],"type":"messages.Stickers"},{"id":-463889475,"predicate":"messages.stickers","params":[{"name":"hash","type":"int"},{"name":"stickers","type":"Vector"}],"type":"messages.Stickers"},{"id":313694676,"predicate":"stickerPack","params":[{"name":"emoticon","type":"string"},{"name":"documents","type":"Vector"}],"type":"StickerPack"},{"id":-395967805,"predicate":"messages.allStickersNotModified","params":[],"type":"messages.AllStickers"},{"id":-302170017,"predicate":"messages.allStickers","params":[{"name":"hash","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.AllStickers"},{"id":-1667805217,"predicate":"updateReadHistoryInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":791617983,"predicate":"updateReadHistoryOutbox","params":[{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-2066640507,"predicate":"messages.affectedMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"messages.AffectedMessages"},{"id":2139689491,"predicate":"updateWebPage","params":[{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-350980120,"predicate":"webPageEmpty","params":[{"name":"id","type":"long"}],"type":"WebPage"},{"id":-981018084,"predicate":"webPagePending","params":[{"name":"id","type":"long"},{"name":"date","type":"int"}],"type":"WebPage"},{"id":-392411726,"predicate":"webPage","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"url","type":"string"},{"name":"display_url","type":"string"},{"name":"hash","type":"int"},{"name":"type","type":"flags.0?string"},{"name":"site_name","type":"flags.1?string"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"photo","type":"flags.4?Photo"},{"name":"embed_url","type":"flags.5?string"},{"name":"embed_type","type":"flags.5?string"},{"name":"embed_width","type":"flags.6?int"},{"name":"embed_height","type":"flags.6?int"},{"name":"duration","type":"flags.7?int"},{"name":"author","type":"flags.8?string"},{"name":"document","type":"flags.9?Document"},{"name":"cached_page","type":"flags.10?Page"},{"name":"attributes","type":"flags.12?Vector"}],"type":"WebPage"},{"id":-1557277184,"predicate":"messageMediaWebPage","params":[{"name":"webpage","type":"WebPage"}],"type":"MessageMedia"},{"id":-1392388579,"predicate":"authorization","params":[{"name":"flags","type":"#"},{"name":"current","type":"flags.0?true"},{"name":"official_app","type":"flags.1?true"},{"name":"password_pending","type":"flags.2?true"},{"name":"hash","type":"long"},{"name":"device_model","type":"string"},{"name":"platform","type":"string"},{"name":"system_version","type":"string"},{"name":"api_id","type":"int"},{"name":"app_name","type":"string"},{"name":"app_version","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"country","type":"string"},{"name":"region","type":"string"}],"type":"Authorization"},{"id":307276766,"predicate":"account.authorizations","params":[{"name":"authorizations","type":"Vector"}],"type":"account.Authorizations"},{"id":408623183,"predicate":"account.password","params":[{"name":"flags","type":"#"},{"name":"has_recovery","type":"flags.0?true"},{"name":"has_secure_values","type":"flags.1?true"},{"name":"has_password","type":"flags.2?true"},{"name":"current_algo","type":"flags.2?PasswordKdfAlgo"},{"name":"srp_B","type":"flags.2?bytes"},{"name":"srp_id","type":"flags.2?long"},{"name":"hint","type":"flags.3?string"},{"name":"email_unconfirmed_pattern","type":"flags.4?string"},{"name":"new_algo","type":"PasswordKdfAlgo"},{"name":"new_secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_random","type":"bytes"},{"name":"pending_reset_date","type":"flags.5?int"}],"type":"account.Password"},{"id":-1705233435,"predicate":"account.passwordSettings","params":[{"name":"flags","type":"#"},{"name":"email","type":"flags.0?string"},{"name":"secure_settings","type":"flags.1?SecureSecretSettings"}],"type":"account.PasswordSettings"},{"id":-1036572727,"predicate":"account.passwordInputSettings","params":[{"name":"flags","type":"#"},{"name":"new_algo","type":"flags.0?PasswordKdfAlgo"},{"name":"new_password_hash","type":"flags.0?bytes"},{"name":"hint","type":"flags.0?string"},{"name":"email","type":"flags.1?string"},{"name":"new_secure_settings","type":"flags.2?SecureSecretSettings"}],"type":"account.PasswordInputSettings"},{"id":326715557,"predicate":"auth.passwordRecovery","params":[{"name":"email_pattern","type":"string"}],"type":"auth.PasswordRecovery"},{"id":-1052959727,"predicate":"inputMediaVenue","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"InputMedia"},{"id":784356159,"predicate":"messageMediaVenue","params":[{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"MessageMedia"},{"id":-1551583367,"predicate":"receivedNotifyMessage","params":[{"name":"id","type":"int"},{"name":"flags","type":"int"}],"type":"ReceivedNotifyMessage"},{"id":1847917725,"predicate":"chatInviteExported","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.0?true"},{"name":"permanent","type":"flags.5?true"},{"name":"link","type":"string"},{"name":"admin_id","type":"int"},{"name":"date","type":"int"},{"name":"start_date","type":"flags.4?int"},{"name":"expire_date","type":"flags.1?int"},{"name":"usage_limit","type":"flags.2?int"},{"name":"usage","type":"flags.3?int"}],"type":"ExportedChatInvite"},{"id":1516793212,"predicate":"chatInviteAlready","params":[{"name":"chat","type":"Chat"}],"type":"ChatInvite"},{"id":-540871282,"predicate":"chatInvite","params":[{"name":"flags","type":"#"},{"name":"channel","type":"flags.0?true"},{"name":"broadcast","type":"flags.1?true"},{"name":"public","type":"flags.2?true"},{"name":"megagroup","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"photo","type":"Photo"},{"name":"participants_count","type":"int"},{"name":"participants","type":"flags.4?Vector"}],"type":"ChatInvite"},{"id":-123931160,"predicate":"messageActionChatJoinedByLink","params":[{"name":"inviter_id","type":"int"}],"type":"MessageAction"},{"id":1757493555,"predicate":"updateReadMessagesContents","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-4838507,"predicate":"inputStickerSetEmpty","params":[],"type":"InputStickerSet"},{"id":-1645763991,"predicate":"inputStickerSetID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputStickerSet"},{"id":-2044933984,"predicate":"inputStickerSetShortName","params":[{"name":"short_name","type":"string"}],"type":"InputStickerSet"},{"id":-673242758,"predicate":"stickerSet","params":[{"name":"flags","type":"#"},{"name":"archived","type":"flags.1?true"},{"name":"official","type":"flags.2?true"},{"name":"masks","type":"flags.3?true"},{"name":"animated","type":"flags.5?true"},{"name":"installed_date","type":"flags.0?int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumbs","type":"flags.4?Vector"},{"name":"thumb_dc_id","type":"flags.4?int"},{"name":"thumb_version","type":"flags.4?int"},{"name":"count","type":"int"},{"name":"hash","type":"int"}],"type":"StickerSet"},{"id":-1240849242,"predicate":"messages.stickerSet","params":[{"name":"set","type":"StickerSet"},{"name":"packs","type":"Vector"},{"name":"documents","type":"Vector"}],"type":"messages.StickerSet"},{"id":-1820043071,"predicate":"user","params":[{"name":"flags","type":"#"},{"name":"self","type":"flags.10?true"},{"name":"contact","type":"flags.11?true"},{"name":"mutual_contact","type":"flags.12?true"},{"name":"deleted","type":"flags.13?true"},{"name":"bot","type":"flags.14?true"},{"name":"bot_chat_history","type":"flags.15?true"},{"name":"bot_nochats","type":"flags.16?true"},{"name":"verified","type":"flags.17?true"},{"name":"restricted","type":"flags.18?true"},{"name":"min","type":"flags.20?true"},{"name":"bot_inline_geo","type":"flags.21?true"},{"name":"support","type":"flags.23?true"},{"name":"scam","type":"flags.24?true"},{"name":"apply_min_photo","type":"flags.25?true"},{"name":"fake","type":"flags.26?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"flags.0?long"},{"name":"first_name","type":"flags.1?string"},{"name":"last_name","type":"flags.2?string"},{"name":"username","type":"flags.3?string"},{"name":"phone","type":"flags.4?string"},{"name":"photo","type":"flags.5?UserProfilePhoto"},{"name":"status","type":"flags.6?UserStatus"},{"name":"bot_info_version","type":"flags.14?int"},{"name":"restriction_reason","type":"flags.18?Vector"},{"name":"bot_inline_placeholder","type":"flags.19?string"},{"name":"lang_code","type":"flags.22?string"}],"type":"User"},{"id":-1032140601,"predicate":"botCommand","params":[{"name":"command","type":"string"},{"name":"description","type":"string"}],"type":"BotCommand"},{"id":-1729618630,"predicate":"botInfo","params":[{"name":"user_id","type":"int"},{"name":"description","type":"string"},{"name":"commands","type":"Vector"}],"type":"BotInfo"},{"id":-1560655744,"predicate":"keyboardButton","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":2002815875,"predicate":"keyboardButtonRow","params":[{"name":"buttons","type":"Vector"}],"type":"KeyboardButtonRow"},{"id":-1606526075,"predicate":"replyKeyboardHide","params":[{"name":"flags","type":"#"},{"name":"selective","type":"flags.2?true"}],"type":"ReplyMarkup"},{"id":-2035021048,"predicate":"replyKeyboardForceReply","params":[{"name":"flags","type":"#"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":-2049074735,"predicate":"replyKeyboardMarkup","params":[{"name":"flags","type":"#"},{"name":"resize","type":"flags.0?true"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"rows","type":"Vector"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":2072935910,"predicate":"inputPeerUser","params":[{"name":"user_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":-668391402,"predicate":"inputUser","params":[{"name":"user_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputUser"},{"id":-1148011883,"predicate":"messageEntityUnknown","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-100378723,"predicate":"messageEntityMention","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1868782349,"predicate":"messageEntityHashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1827637959,"predicate":"messageEntityBotCommand","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1859134776,"predicate":"messageEntityUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1692693954,"predicate":"messageEntityEmail","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1117713463,"predicate":"messageEntityBold","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-2106619040,"predicate":"messageEntityItalic","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":681706865,"predicate":"messageEntityCode","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1938967520,"predicate":"messageEntityPre","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"language","type":"string"}],"type":"MessageEntity"},{"id":1990644519,"predicate":"messageEntityTextUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"url","type":"string"}],"type":"MessageEntity"},{"id":-1877614335,"predicate":"updateShortSentMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":-292807034,"predicate":"inputChannelEmpty","params":[],"type":"InputChannel"},{"id":-1343524562,"predicate":"inputChannel","params":[{"name":"channel_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputChannel"},{"id":-1109531342,"predicate":"peerChannel","params":[{"name":"channel_id","type":"int"}],"type":"Peer"},{"id":548253432,"predicate":"inputPeerChannel","params":[{"name":"channel_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":-753232354,"predicate":"channel","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"left","type":"flags.2?true"},{"name":"broadcast","type":"flags.5?true"},{"name":"verified","type":"flags.7?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"restricted","type":"flags.9?true"},{"name":"signatures","type":"flags.11?true"},{"name":"min","type":"flags.12?true"},{"name":"scam","type":"flags.19?true"},{"name":"has_link","type":"flags.20?true"},{"name":"has_geo","type":"flags.21?true"},{"name":"slowmode_enabled","type":"flags.22?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"fake","type":"flags.25?true"},{"name":"gigagroup","type":"flags.26?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"flags.13?long"},{"name":"title","type":"string"},{"name":"username","type":"flags.6?string"},{"name":"photo","type":"ChatPhoto"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"restriction_reason","type":"flags.9?Vector"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"banned_rights","type":"flags.15?ChatBannedRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"},{"name":"participants_count","type":"flags.17?int"}],"type":"Chat"},{"id":681420594,"predicate":"channelForbidden","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.5?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"until_date","type":"flags.16?int"}],"type":"Chat"},{"id":2131196633,"predicate":"contacts.resolvedPeer","params":[{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ResolvedPeer"},{"id":1418477459,"predicate":"channelFull","params":[{"name":"flags","type":"#"},{"name":"can_view_participants","type":"flags.3?true"},{"name":"can_set_username","type":"flags.6?true"},{"name":"can_set_stickers","type":"flags.7?true"},{"name":"hidden_prehistory","type":"flags.10?true"},{"name":"can_set_location","type":"flags.16?true"},{"name":"has_scheduled","type":"flags.19?true"},{"name":"can_view_stats","type":"flags.20?true"},{"name":"blocked","type":"flags.22?true"},{"name":"id","type":"int"},{"name":"about","type":"string"},{"name":"participants_count","type":"flags.0?int"},{"name":"admins_count","type":"flags.1?int"},{"name":"kicked_count","type":"flags.2?int"},{"name":"banned_count","type":"flags.2?int"},{"name":"online_count","type":"flags.13?int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"chat_photo","type":"Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.23?ExportedChatInvite"},{"name":"bot_info","type":"Vector"},{"name":"migrated_from_chat_id","type":"flags.4?int"},{"name":"migrated_from_max_id","type":"flags.4?int"},{"name":"pinned_msg_id","type":"flags.5?int"},{"name":"stickerset","type":"flags.8?StickerSet"},{"name":"available_min_id","type":"flags.9?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"linked_chat_id","type":"flags.14?int"},{"name":"location","type":"flags.15?ChannelLocation"},{"name":"slowmode_seconds","type":"flags.17?int"},{"name":"slowmode_next_send_date","type":"flags.18?int"},{"name":"stats_dc","type":"flags.12?int"},{"name":"pts","type":"int"},{"name":"call","type":"flags.21?InputGroupCall"},{"name":"ttl_period","type":"flags.24?int"},{"name":"pending_suggestions","type":"flags.25?Vector"},{"name":"groupcall_default_join_as","type":"flags.26?Peer"}],"type":"ChatFull"},{"id":182649427,"predicate":"messageRange","params":[{"name":"min_id","type":"int"},{"name":"max_id","type":"int"}],"type":"MessageRange"},{"id":1682413576,"predicate":"messages.channelMessages","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"pts","type":"int"},{"name":"count","type":"int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":-1781355374,"predicate":"messageActionChannelCreate","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":-352032773,"predicate":"updateChannelTooLong","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"pts","type":"flags.0?int"}],"type":"Update"},{"id":-1227598250,"predicate":"updateChannel","params":[{"name":"channel_id","type":"int"}],"type":"Update"},{"id":1656358105,"predicate":"updateNewChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":856380452,"predicate":"updateReadChannelInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"channel_id","type":"int"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"}],"type":"Update"},{"id":-1015733815,"predicate":"updateDeleteChannelMessages","params":[{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1734268085,"predicate":"updateChannelMessageViews","params":[{"name":"channel_id","type":"int"},{"name":"id","type":"int"},{"name":"views","type":"int"}],"type":"Update"},{"id":1041346555,"predicate":"updates.channelDifferenceEmpty","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"}],"type":"updates.ChannelDifference"},{"id":-1531132162,"predicate":"updates.channelDifferenceTooLong","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"timeout","type":"flags.1?int"},{"name":"dialog","type":"Dialog"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":543450958,"predicate":"updates.channelDifference","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"},{"name":"new_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":-1798033689,"predicate":"channelMessagesFilterEmpty","params":[],"type":"ChannelMessagesFilter"},{"id":-847783593,"predicate":"channelMessagesFilter","params":[{"name":"flags","type":"#"},{"name":"exclude_new_messages","type":"flags.1?true"},{"name":"ranges","type":"Vector"}],"type":"ChannelMessagesFilter"},{"id":367766557,"predicate":"channelParticipant","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":-1557620115,"predicate":"channelParticipantSelf","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":1149094475,"predicate":"channelParticipantCreator","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.0?string"}],"type":"ChannelParticipant"},{"id":-566281095,"predicate":"channelParticipantsRecent","params":[],"type":"ChannelParticipantsFilter"},{"id":-1268741783,"predicate":"channelParticipantsAdmins","params":[],"type":"ChannelParticipantsFilter"},{"id":-1548400251,"predicate":"channelParticipantsKicked","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-1699676497,"predicate":"channels.channelParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipants"},{"id":-541588713,"predicate":"channels.channelParticipant","params":[{"name":"participant","type":"ChannelParticipant"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipant"},{"id":-636267638,"predicate":"chatParticipantCreator","params":[{"name":"user_id","type":"int"}],"type":"ChatParticipant"},{"id":-489233354,"predicate":"chatParticipantAdmin","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-1232070311,"predicate":"updateChatParticipantAdmin","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"is_admin","type":"Bool"},{"name":"version","type":"int"}],"type":"Update"},{"id":1371385889,"predicate":"messageActionChatMigrateTo","params":[{"name":"channel_id","type":"int"}],"type":"MessageAction"},{"id":-1336546578,"predicate":"messageActionChannelMigrateFrom","params":[{"name":"title","type":"string"},{"name":"chat_id","type":"int"}],"type":"MessageAction"},{"id":-1328445861,"predicate":"channelParticipantsBots","params":[],"type":"ChannelParticipantsFilter"},{"id":2013922064,"predicate":"help.termsOfService","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"id","type":"DataJSON"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"min_age_confirm","type":"flags.1?int"}],"type":"help.TermsOfService"},{"id":1753886890,"predicate":"updateNewStickerSet","params":[{"name":"stickerset","type":"messages.StickerSet"}],"type":"Update"},{"id":196268545,"predicate":"updateStickerSetsOrder","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Update"},{"id":1135492588,"predicate":"updateStickerSets","params":[],"type":"Update"},{"id":-402498398,"predicate":"messages.savedGifsNotModified","params":[],"type":"messages.SavedGifs"},{"id":772213157,"predicate":"messages.savedGifs","params":[{"name":"hash","type":"int"},{"name":"gifs","type":"Vector"}],"type":"messages.SavedGifs"},{"id":-1821035490,"predicate":"updateSavedGifs","params":[],"type":"Update"},{"id":864077702,"predicate":"inputBotInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1036876423,"predicate":"inputBotInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-2000710887,"predicate":"inputBotInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?InputWebDocument"},{"name":"content","type":"flags.5?InputWebDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1984755728,"predicate":"botInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1937807902,"predicate":"botInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":295067450,"predicate":"botInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?WebDocument"},{"name":"content","type":"flags.5?WebDocument"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":-1803769784,"predicate":"messages.botResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"query_id","type":"long"},{"name":"next_offset","type":"flags.1?string"},{"name":"switch_pm","type":"flags.2?InlineBotSwitchPM"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"users","type":"Vector"}],"type":"messages.BotResults"},{"id":1059076315,"predicate":"updateBotInlineQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"peer_type","type":"flags.1?InlineQueryPeerType"},{"name":"offset","type":"string"}],"type":"Update"},{"id":239663460,"predicate":"updateBotInlineSend","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"int"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"id","type":"string"},{"name":"msg_id","type":"flags.1?InputBotInlineMessageID"}],"type":"Update"},{"id":1358283666,"predicate":"inputMessagesFilterVoice","params":[],"type":"MessagesFilter"},{"id":928101534,"predicate":"inputMessagesFilterMusic","params":[],"type":"MessagesFilter"},{"id":-1107622874,"predicate":"inputPrivacyKeyChatInvite","params":[],"type":"InputPrivacyKey"},{"id":1343122938,"predicate":"privacyKeyChatInvite","params":[],"type":"PrivacyKey"},{"id":1571494644,"predicate":"exportedMessageLink","params":[{"name":"link","type":"string"},{"name":"html","type":"string"}],"type":"ExportedMessageLink"},{"id":1601666510,"predicate":"messageFwdHeader","params":[{"name":"flags","type":"#"},{"name":"imported","type":"flags.7?true"},{"name":"from_id","type":"flags.0?Peer"},{"name":"from_name","type":"flags.5?string"},{"name":"date","type":"int"},{"name":"channel_post","type":"flags.2?int"},{"name":"post_author","type":"flags.3?string"},{"name":"saved_from_peer","type":"flags.4?Peer"},{"name":"saved_from_msg_id","type":"flags.4?int"},{"name":"psa_type","type":"flags.6?string"}],"type":"MessageFwdHeader"},{"id":457133559,"predicate":"updateEditChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1799538451,"predicate":"messageActionPinMessage","params":[],"type":"MessageAction"},{"id":1923290508,"predicate":"auth.codeTypeSms","params":[],"type":"auth.CodeType"},{"id":1948046307,"predicate":"auth.codeTypeCall","params":[],"type":"auth.CodeType"},{"id":577556219,"predicate":"auth.codeTypeFlashCall","params":[],"type":"auth.CodeType"},{"id":1035688326,"predicate":"auth.sentCodeTypeApp","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1073693790,"predicate":"auth.sentCodeTypeSms","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":1398007207,"predicate":"auth.sentCodeTypeCall","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1425815847,"predicate":"auth.sentCodeTypeFlashCall","params":[{"name":"pattern","type":"string"}],"type":"auth.SentCodeType"},{"id":629866245,"predicate":"keyboardButtonUrl","params":[{"name":"text","type":"string"},{"name":"url","type":"string"}],"type":"KeyboardButton"},{"id":901503851,"predicate":"keyboardButtonCallback","params":[{"name":"flags","type":"#"},{"name":"requires_password","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"data","type":"bytes"}],"type":"KeyboardButton"},{"id":-1318425559,"predicate":"keyboardButtonRequestPhone","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-59151553,"predicate":"keyboardButtonRequestGeoLocation","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":90744648,"predicate":"keyboardButtonSwitchInline","params":[{"name":"flags","type":"#"},{"name":"same_peer","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"query","type":"string"}],"type":"KeyboardButton"},{"id":1218642516,"predicate":"replyInlineMarkup","params":[{"name":"rows","type":"Vector"}],"type":"ReplyMarkup"},{"id":911761060,"predicate":"messages.botCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"has_url","type":"flags.3?true"},{"name":"native_ui","type":"flags.4?true"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"messages.BotCallbackAnswer"},{"id":-415938591,"predicate":"updateBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":649453030,"predicate":"messages.messageEditData","params":[{"name":"flags","type":"#"},{"name":"caption","type":"flags.0?true"}],"type":"messages.MessageEditData"},{"id":-469536605,"predicate":"updateEditMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1768777083,"predicate":"inputBotInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1098628881,"predicate":"inputBotInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-1494368259,"predicate":"inputBotInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":85477117,"predicate":"botInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1970903652,"predicate":"botInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":416402882,"predicate":"botInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1462213465,"predicate":"inputBotInlineResultPhoto","params":[{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"InputPhoto"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":-459324,"predicate":"inputBotInlineResultDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"document","type":"InputDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":400266251,"predicate":"botInlineMediaResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"flags.0?Photo"},{"name":"document","type":"flags.1?Document"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":-1995686519,"predicate":"inputBotInlineMessageID","params":[{"name":"dc_id","type":"int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":-103646630,"predicate":"updateInlineBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"msg_id","type":"InputBotInlineMessageID"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":1008755359,"predicate":"inlineBotSwitchPM","params":[{"name":"text","type":"string"},{"name":"start_param","type":"string"}],"type":"InlineBotSwitchPM"},{"id":863093588,"predicate":"messages.peerDialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"messages.PeerDialogs"},{"id":-305282981,"predicate":"topPeer","params":[{"name":"peer","type":"Peer"},{"name":"rating","type":"double"}],"type":"TopPeer"},{"id":-1419371685,"predicate":"topPeerCategoryBotsPM","params":[],"type":"TopPeerCategory"},{"id":344356834,"predicate":"topPeerCategoryBotsInline","params":[],"type":"TopPeerCategory"},{"id":104314861,"predicate":"topPeerCategoryCorrespondents","params":[],"type":"TopPeerCategory"},{"id":-1122524854,"predicate":"topPeerCategoryGroups","params":[],"type":"TopPeerCategory"},{"id":371037736,"predicate":"topPeerCategoryChannels","params":[],"type":"TopPeerCategory"},{"id":-75283823,"predicate":"topPeerCategoryPeers","params":[{"name":"category","type":"TopPeerCategory"},{"name":"count","type":"int"},{"name":"peers","type":"Vector"}],"type":"TopPeerCategoryPeers"},{"id":-567906571,"predicate":"contacts.topPeersNotModified","params":[],"type":"contacts.TopPeers"},{"id":1891070632,"predicate":"contacts.topPeers","params":[{"name":"categories","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.TopPeers"},{"id":892193368,"predicate":"messageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"int"}],"type":"MessageEntity"},{"id":546203849,"predicate":"inputMessageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"MessageEntity"},{"id":975236280,"predicate":"inputMessagesFilterChatPhotos","params":[],"type":"MessagesFilter"},{"id":634833351,"predicate":"updateReadChannelOutbox","params":[{"name":"channel_id","type":"int"},{"name":"max_id","type":"int"}],"type":"Update"},{"id":-299124375,"predicate":"updateDraftMessage","params":[{"name":"peer","type":"Peer"},{"name":"draft","type":"DraftMessage"}],"type":"Update"},{"id":453805082,"predicate":"draftMessageEmpty","params":[{"name":"flags","type":"#"},{"name":"date","type":"flags.0?int"}],"type":"DraftMessage"},{"id":-40996577,"predicate":"draftMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"},{"name":"date","type":"int"}],"type":"DraftMessage"},{"id":-1615153660,"predicate":"messageActionHistoryClear","params":[],"type":"MessageAction"},{"id":-958657434,"predicate":"messages.featuredStickersNotModified","params":[{"name":"count","type":"int"}],"type":"messages.FeaturedStickers"},{"id":-1230257343,"predicate":"messages.featuredStickers","params":[{"name":"hash","type":"int"},{"name":"count","type":"int"},{"name":"sets","type":"Vector"},{"name":"unread","type":"Vector"}],"type":"messages.FeaturedStickers"},{"id":1461528386,"predicate":"updateReadFeaturedStickers","params":[],"type":"Update"},{"id":186120336,"predicate":"messages.recentStickersNotModified","params":[],"type":"messages.RecentStickers"},{"id":586395571,"predicate":"messages.recentStickers","params":[{"name":"hash","type":"int"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"},{"name":"dates","type":"Vector"}],"type":"messages.RecentStickers"},{"id":-1706939360,"predicate":"updateRecentStickers","params":[],"type":"Update"},{"id":1338747336,"predicate":"messages.archivedStickers","params":[{"name":"count","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.ArchivedStickers"},{"id":946083368,"predicate":"messages.stickerSetInstallResultSuccess","params":[],"type":"messages.StickerSetInstallResult"},{"id":904138920,"predicate":"messages.stickerSetInstallResultArchive","params":[{"name":"sets","type":"Vector"}],"type":"messages.StickerSetInstallResult"},{"id":1678812626,"predicate":"stickerSetCovered","params":[{"name":"set","type":"StickerSet"},{"name":"cover","type":"Document"}],"type":"StickerSetCovered"},{"id":-1574314746,"predicate":"updateConfig","params":[],"type":"Update"},{"id":861169551,"predicate":"updatePtsChanged","params":[],"type":"Update"},{"id":-440664550,"predicate":"inputMediaPhotoExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-78455655,"predicate":"inputMediaDocumentExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":872932635,"predicate":"stickerSetMultiCovered","params":[{"name":"set","type":"StickerSet"},{"name":"covers","type":"Vector"}],"type":"StickerSetCovered"},{"id":-1361650766,"predicate":"maskCoords","params":[{"name":"n","type":"int"},{"name":"x","type":"double"},{"name":"y","type":"double"},{"name":"zoom","type":"double"}],"type":"MaskCoords"},{"id":-1744710921,"predicate":"documentAttributeHasStickers","params":[],"type":"DocumentAttribute"},{"id":1251549527,"predicate":"inputStickeredMediaPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputStickeredMedia"},{"id":70813275,"predicate":"inputStickeredMediaDocument","params":[{"name":"id","type":"InputDocument"}],"type":"InputStickeredMedia"},{"id":-1107729093,"predicate":"game","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"short_name","type":"string"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"Photo"},{"name":"document","type":"flags.0?Document"}],"type":"Game"},{"id":1336154098,"predicate":"inputBotInlineResultGame","params":[{"name":"id","type":"string"},{"name":"short_name","type":"string"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1262639204,"predicate":"inputBotInlineMessageGame","params":[{"name":"flags","type":"#"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-38694904,"predicate":"messageMediaGame","params":[{"name":"game","type":"Game"}],"type":"MessageMedia"},{"id":-750828557,"predicate":"inputMediaGame","params":[{"name":"id","type":"InputGame"}],"type":"InputMedia"},{"id":53231223,"predicate":"inputGameID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGame"},{"id":-1020139510,"predicate":"inputGameShortName","params":[{"name":"bot_id","type":"InputUser"},{"name":"short_name","type":"string"}],"type":"InputGame"},{"id":1358175439,"predicate":"keyboardButtonGame","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-1834538890,"predicate":"messageActionGameScore","params":[{"name":"game_id","type":"long"},{"name":"score","type":"int"}],"type":"MessageAction"},{"id":1493171408,"predicate":"highScore","params":[{"name":"pos","type":"int"},{"name":"user_id","type":"int"},{"name":"score","type":"int"}],"type":"HighScore"},{"id":-1707344487,"predicate":"messages.highScores","params":[{"name":"scores","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.HighScores"},{"id":1258196845,"predicate":"updates.differenceTooLong","params":[{"name":"pts","type":"int"}],"type":"updates.Difference"},{"id":1081547008,"predicate":"updateChannelWebPage","params":[{"name":"channel_id","type":"int"},{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1663561404,"predicate":"messages.chatsSlice","params":[{"name":"count","type":"int"},{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-599948721,"predicate":"textEmpty","params":[],"type":"RichText"},{"id":1950782688,"predicate":"textPlain","params":[{"name":"text","type":"string"}],"type":"RichText"},{"id":1730456516,"predicate":"textBold","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-653089380,"predicate":"textItalic","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1054465340,"predicate":"textUnderline","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1678197867,"predicate":"textStrike","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1816074681,"predicate":"textFixed","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1009288385,"predicate":"textUrl","params":[{"name":"text","type":"RichText"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"}],"type":"RichText"},{"id":-564523562,"predicate":"textEmail","params":[{"name":"text","type":"RichText"},{"name":"email","type":"string"}],"type":"RichText"},{"id":2120376535,"predicate":"textConcat","params":[{"name":"texts","type":"Vector"}],"type":"RichText"},{"id":324435594,"predicate":"pageBlockUnsupported","params":[],"type":"PageBlock"},{"id":1890305021,"predicate":"pageBlockTitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1879401953,"predicate":"pageBlockSubtitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1162877472,"predicate":"pageBlockAuthorDate","params":[{"name":"author","type":"RichText"},{"name":"published_date","type":"int"}],"type":"PageBlock"},{"id":-1076861716,"predicate":"pageBlockHeader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-248793375,"predicate":"pageBlockSubheader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":1182402406,"predicate":"pageBlockParagraph","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1066346178,"predicate":"pageBlockPreformatted","params":[{"name":"text","type":"RichText"},{"name":"language","type":"string"}],"type":"PageBlock"},{"id":1216809369,"predicate":"pageBlockFooter","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-618614392,"predicate":"pageBlockDivider","params":[],"type":"PageBlock"},{"id":-837994576,"predicate":"pageBlockAnchor","params":[{"name":"name","type":"string"}],"type":"PageBlock"},{"id":-454524911,"predicate":"pageBlockList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":641563686,"predicate":"pageBlockBlockquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":1329878739,"predicate":"pageBlockPullquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":391759200,"predicate":"pageBlockPhoto","params":[{"name":"flags","type":"#"},{"name":"photo_id","type":"long"},{"name":"caption","type":"PageCaption"},{"name":"url","type":"flags.0?string"},{"name":"webpage_id","type":"flags.0?long"}],"type":"PageBlock"},{"id":2089805750,"predicate":"pageBlockVideo","params":[{"name":"flags","type":"#"},{"name":"autoplay","type":"flags.0?true"},{"name":"loop","type":"flags.1?true"},{"name":"video_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":972174080,"predicate":"pageBlockCover","params":[{"name":"cover","type":"PageBlock"}],"type":"PageBlock"},{"id":-1468953147,"predicate":"pageBlockEmbed","params":[{"name":"flags","type":"#"},{"name":"full_width","type":"flags.0?true"},{"name":"allow_scrolling","type":"flags.3?true"},{"name":"url","type":"flags.1?string"},{"name":"html","type":"flags.2?string"},{"name":"poster_photo_id","type":"flags.4?long"},{"name":"w","type":"flags.5?int"},{"name":"h","type":"flags.5?int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-229005301,"predicate":"pageBlockEmbedPost","params":[{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"author_photo_id","type":"long"},{"name":"author","type":"string"},{"name":"date","type":"int"},{"name":"blocks","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1705048653,"predicate":"pageBlockCollage","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":52401552,"predicate":"pageBlockSlideshow","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1930545681,"predicate":"webPageNotModified","params":[{"name":"flags","type":"#"},{"name":"cached_page_views","type":"flags.0?int"}],"type":"WebPage"},{"id":-88417185,"predicate":"inputPrivacyKeyPhoneCall","params":[],"type":"InputPrivacyKey"},{"id":1030105979,"predicate":"privacyKeyPhoneCall","params":[],"type":"PrivacyKey"},{"id":-580219064,"predicate":"sendMessageGamePlayAction","params":[],"type":"SendMessageAction"},{"id":-2048646399,"predicate":"phoneCallDiscardReasonMissed","params":[],"type":"PhoneCallDiscardReason"},{"id":-527056480,"predicate":"phoneCallDiscardReasonDisconnect","params":[],"type":"PhoneCallDiscardReason"},{"id":1471006352,"predicate":"phoneCallDiscardReasonHangup","params":[],"type":"PhoneCallDiscardReason"},{"id":-84416311,"predicate":"phoneCallDiscardReasonBusy","params":[],"type":"PhoneCallDiscardReason"},{"id":1852826908,"predicate":"updateDialogPinned","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-99664734,"predicate":"updatePinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.1?int"},{"name":"order","type":"flags.0?Vector"}],"type":"Update"},{"id":2104790276,"predicate":"dataJSON","params":[{"name":"data","type":"string"}],"type":"DataJSON"},{"id":-2095595325,"predicate":"updateBotWebhookJSON","params":[{"name":"data","type":"DataJSON"}],"type":"Update"},{"id":-1684914010,"predicate":"updateBotWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"},{"name":"timeout","type":"int"}],"type":"Update"},{"id":-886477832,"predicate":"labeledPrice","params":[{"name":"label","type":"string"},{"name":"amount","type":"long"}],"type":"LabeledPrice"},{"id":215516896,"predicate":"invoice","params":[{"name":"flags","type":"#"},{"name":"test","type":"flags.0?true"},{"name":"name_requested","type":"flags.1?true"},{"name":"phone_requested","type":"flags.2?true"},{"name":"email_requested","type":"flags.3?true"},{"name":"shipping_address_requested","type":"flags.4?true"},{"name":"flexible","type":"flags.5?true"},{"name":"phone_to_provider","type":"flags.6?true"},{"name":"email_to_provider","type":"flags.7?true"},{"name":"currency","type":"string"},{"name":"prices","type":"Vector"},{"name":"max_tip_amount","type":"flags.8?long"},{"name":"suggested_tip_amounts","type":"flags.8?Vector"}],"type":"Invoice"},{"id":-646342540,"predicate":"inputMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"start_param","type":"flags.1?string"}],"type":"InputMedia"},{"id":-368917890,"predicate":"paymentCharge","params":[{"name":"id","type":"string"},{"name":"provider_charge_id","type":"string"}],"type":"PaymentCharge"},{"id":-1892568281,"predicate":"messageActionPaymentSentMe","params":[{"name":"flags","type":"#"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"charge","type":"PaymentCharge"}],"type":"MessageAction"},{"id":-2074799289,"predicate":"messageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"receipt_msg_id","type":"flags.2?int"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"start_param","type":"string"}],"type":"MessageMedia"},{"id":512535275,"predicate":"postAddress","params":[{"name":"street_line1","type":"string"},{"name":"street_line2","type":"string"},{"name":"city","type":"string"},{"name":"state","type":"string"},{"name":"country_iso2","type":"string"},{"name":"post_code","type":"string"}],"type":"PostAddress"},{"id":-1868808300,"predicate":"paymentRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"name","type":"flags.0?string"},{"name":"phone","type":"flags.1?string"},{"name":"email","type":"flags.2?string"},{"name":"shipping_address","type":"flags.3?PostAddress"}],"type":"PaymentRequestedInfo"},{"id":-1344716869,"predicate":"keyboardButtonBuy","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":1080663248,"predicate":"messageActionPaymentSent","params":[{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"MessageAction"},{"id":-842892769,"predicate":"paymentSavedCredentialsCard","params":[{"name":"id","type":"string"},{"name":"title","type":"string"}],"type":"PaymentSavedCredentials"},{"id":475467473,"predicate":"webDocument","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":-1678949555,"predicate":"inputWebDocument","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"InputWebDocument"},{"id":-1036396922,"predicate":"inputWebFileLocation","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"}],"type":"InputWebFileLocation"},{"id":568808380,"predicate":"upload.webFile","params":[{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"file_type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.WebFile"},{"id":-1928649707,"predicate":"payments.paymentForm","params":[{"name":"flags","type":"#"},{"name":"can_save_credentials","type":"flags.2?true"},{"name":"password_missing","type":"flags.3?true"},{"name":"form_id","type":"long"},{"name":"bot_id","type":"int"},{"name":"invoice","type":"Invoice"},{"name":"provider_id","type":"int"},{"name":"url","type":"string"},{"name":"native_provider","type":"flags.4?string"},{"name":"native_params","type":"flags.4?DataJSON"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"},{"name":"saved_credentials","type":"flags.1?PaymentSavedCredentials"},{"name":"users","type":"Vector"}],"type":"payments.PaymentForm"},{"id":-784000893,"predicate":"payments.validatedRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"id","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"payments.ValidatedRequestedInfo"},{"id":1314881805,"predicate":"payments.paymentResult","params":[{"name":"updates","type":"Updates"}],"type":"payments.PaymentResult"},{"id":280319440,"predicate":"payments.paymentReceipt","params":[{"name":"flags","type":"#"},{"name":"date","type":"int"},{"name":"bot_id","type":"int"},{"name":"provider_id","type":"int"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.2?WebDocument"},{"name":"invoice","type":"Invoice"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping","type":"flags.1?ShippingOption"},{"name":"tip_amount","type":"flags.3?long"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"credentials_title","type":"string"},{"name":"users","type":"Vector"}],"type":"payments.PaymentReceipt"},{"id":-74456004,"predicate":"payments.savedInfo","params":[{"name":"flags","type":"#"},{"name":"has_saved_credentials","type":"flags.1?true"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"}],"type":"payments.SavedInfo"},{"id":-1056001329,"predicate":"inputPaymentCredentialsSaved","params":[{"name":"id","type":"string"},{"name":"tmp_password","type":"bytes"}],"type":"InputPaymentCredentials"},{"id":873977640,"predicate":"inputPaymentCredentials","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-614138572,"predicate":"account.tmpPassword","params":[{"name":"tmp_password","type":"bytes"},{"name":"valid_until","type":"int"}],"type":"account.TmpPassword"},{"id":-1239335713,"predicate":"shippingOption","params":[{"name":"id","type":"string"},{"name":"title","type":"string"},{"name":"prices","type":"Vector"}],"type":"ShippingOption"},{"id":-523384512,"predicate":"updateBotShippingQuery","params":[{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"payload","type":"bytes"},{"name":"shipping_address","type":"PostAddress"}],"type":"Update"},{"id":1563376297,"predicate":"updateBotPrecheckoutQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"Update"},{"id":-6249322,"predicate":"inputStickerSetItem","params":[{"name":"flags","type":"#"},{"name":"document","type":"InputDocument"},{"name":"emoji","type":"string"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"InputStickerSetItem"},{"id":-1425052898,"predicate":"updatePhoneCall","params":[{"name":"phone_call","type":"PhoneCall"}],"type":"Update"},{"id":506920429,"predicate":"inputPhoneCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPhoneCall"},{"id":1399245077,"predicate":"phoneCallEmpty","params":[{"name":"id","type":"long"}],"type":"PhoneCall"},{"id":462375633,"predicate":"phoneCallWaiting","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"receive_date","type":"flags.0?int"}],"type":"PhoneCall"},{"id":-2014659757,"predicate":"phoneCallRequested","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":-1719909046,"predicate":"phoneCallAccepted","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":-2025673089,"predicate":"phoneCall","params":[{"name":"flags","type":"#"},{"name":"p2p_allowed","type":"flags.5?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"connections","type":"Vector"},{"name":"start_date","type":"int"}],"type":"PhoneCall"},{"id":1355435489,"predicate":"phoneCallDiscarded","params":[{"name":"flags","type":"#"},{"name":"need_rating","type":"flags.2?true"},{"name":"need_debug","type":"flags.3?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"PhoneCall"},{"id":-1655957568,"predicate":"phoneConnection","params":[{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"peer_tag","type":"bytes"}],"type":"PhoneConnection"},{"id":-58224696,"predicate":"phoneCallProtocol","params":[{"name":"flags","type":"#"},{"name":"udp_p2p","type":"flags.0?true"},{"name":"udp_reflector","type":"flags.1?true"},{"name":"min_layer","type":"int"},{"name":"max_layer","type":"int"},{"name":"library_versions","type":"Vector"}],"type":"PhoneCallProtocol"},{"id":-326966976,"predicate":"phone.phoneCall","params":[{"name":"phone_call","type":"PhoneCall"},{"name":"users","type":"Vector"}],"type":"phone.PhoneCall"},{"id":-2134272152,"predicate":"inputMessagesFilterPhoneCalls","params":[{"name":"flags","type":"#"},{"name":"missed","type":"flags.0?true"}],"type":"MessagesFilter"},{"id":-2132731265,"predicate":"messageActionPhoneCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.2?true"},{"name":"call_id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"MessageAction"},{"id":2054952868,"predicate":"inputMessagesFilterRoundVoice","params":[],"type":"MessagesFilter"},{"id":-1253451181,"predicate":"inputMessagesFilterRoundVideo","params":[],"type":"MessagesFilter"},{"id":-1997373508,"predicate":"sendMessageRecordRoundAction","params":[],"type":"SendMessageAction"},{"id":608050278,"predicate":"sendMessageUploadRoundAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-242427324,"predicate":"upload.fileCdnRedirect","params":[{"name":"dc_id","type":"int"},{"name":"file_token","type":"bytes"},{"name":"encryption_key","type":"bytes"},{"name":"encryption_iv","type":"bytes"},{"name":"file_hashes","type":"Vector"}],"type":"upload.File"},{"id":-290921362,"predicate":"upload.cdnFileReuploadNeeded","params":[{"name":"request_token","type":"bytes"}],"type":"upload.CdnFile"},{"id":-1449145777,"predicate":"upload.cdnFile","params":[{"name":"bytes","type":"bytes"}],"type":"upload.CdnFile"},{"id":-914167110,"predicate":"cdnPublicKey","params":[{"name":"dc_id","type":"int"},{"name":"public_key","type":"string"}],"type":"CdnPublicKey"},{"id":1462101002,"predicate":"cdnConfig","params":[{"name":"public_keys","type":"Vector"}],"type":"CdnConfig"},{"id":-283684427,"predicate":"pageBlockChannel","params":[{"name":"channel","type":"Chat"}],"type":"PageBlock"},{"id":-892239370,"predicate":"langPackString","params":[{"name":"key","type":"string"},{"name":"value","type":"string"}],"type":"LangPackString"},{"id":1816636575,"predicate":"langPackStringPluralized","params":[{"name":"flags","type":"#"},{"name":"key","type":"string"},{"name":"zero_value","type":"flags.0?string"},{"name":"one_value","type":"flags.1?string"},{"name":"two_value","type":"flags.2?string"},{"name":"few_value","type":"flags.3?string"},{"name":"many_value","type":"flags.4?string"},{"name":"other_value","type":"string"}],"type":"LangPackString"},{"id":695856818,"predicate":"langPackStringDeleted","params":[{"name":"key","type":"string"}],"type":"LangPackString"},{"id":-209337866,"predicate":"langPackDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"strings","type":"Vector"}],"type":"LangPackDifference"},{"id":-288727837,"predicate":"langPackLanguage","params":[{"name":"flags","type":"#"},{"name":"official","type":"flags.0?true"},{"name":"rtl","type":"flags.2?true"},{"name":"beta","type":"flags.3?true"},{"name":"name","type":"string"},{"name":"native_name","type":"string"},{"name":"lang_code","type":"string"},{"name":"base_lang_code","type":"flags.1?string"},{"name":"plural_code","type":"string"},{"name":"strings_count","type":"int"},{"name":"translated_count","type":"int"},{"name":"translations_url","type":"string"}],"type":"LangPackLanguage"},{"id":1180041828,"predicate":"updateLangPackTooLong","params":[{"name":"lang_code","type":"string"}],"type":"Update"},{"id":1442983757,"predicate":"updateLangPack","params":[{"name":"difference","type":"LangPackDifference"}],"type":"Update"},{"id":-859915345,"predicate":"channelParticipantAdmin","params":[{"name":"flags","type":"#"},{"name":"can_edit","type":"flags.0?true"},{"name":"self","type":"flags.1?true"},{"name":"user_id","type":"int"},{"name":"inviter_id","type":"flags.1?int"},{"name":"promoted_by","type":"int"},{"name":"date","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.2?string"}],"type":"ChannelParticipant"},{"id":1352785878,"predicate":"channelParticipantBanned","params":[{"name":"flags","type":"#"},{"name":"left","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"kicked_by","type":"int"},{"name":"date","type":"int"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"ChannelParticipant"},{"id":338142689,"predicate":"channelParticipantsBanned","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":106343499,"predicate":"channelParticipantsSearch","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-421545947,"predicate":"channelAdminLogEventActionChangeTitle","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1427671598,"predicate":"channelAdminLogEventActionChangeAbout","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1783299128,"predicate":"channelAdminLogEventActionChangeUsername","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1129042607,"predicate":"channelAdminLogEventActionChangePhoto","params":[{"name":"prev_photo","type":"Photo"},{"name":"new_photo","type":"Photo"}],"type":"ChannelAdminLogEventAction"},{"id":460916654,"predicate":"channelAdminLogEventActionToggleInvites","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":648939889,"predicate":"channelAdminLogEventActionToggleSignatures","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-370660328,"predicate":"channelAdminLogEventActionUpdatePinned","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1889215493,"predicate":"channelAdminLogEventActionEditMessage","params":[{"name":"prev_message","type":"Message"},{"name":"new_message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1121994683,"predicate":"channelAdminLogEventActionDeleteMessage","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":405815507,"predicate":"channelAdminLogEventActionParticipantJoin","params":[],"type":"ChannelAdminLogEventAction"},{"id":-124291086,"predicate":"channelAdminLogEventActionParticipantLeave","params":[],"type":"ChannelAdminLogEventAction"},{"id":-484690728,"predicate":"channelAdminLogEventActionParticipantInvite","params":[{"name":"participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-422036098,"predicate":"channelAdminLogEventActionParticipantToggleBan","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-714643696,"predicate":"channelAdminLogEventActionParticipantToggleAdmin","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":995769920,"predicate":"channelAdminLogEvent","params":[{"name":"id","type":"long"},{"name":"date","type":"int"},{"name":"user_id","type":"int"},{"name":"action","type":"ChannelAdminLogEventAction"}],"type":"ChannelAdminLogEvent"},{"id":-309659827,"predicate":"channels.adminLogResults","params":[{"name":"events","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.AdminLogResults"},{"id":-368018716,"predicate":"channelAdminLogEventsFilter","params":[{"name":"flags","type":"#"},{"name":"join","type":"flags.0?true"},{"name":"leave","type":"flags.1?true"},{"name":"invite","type":"flags.2?true"},{"name":"ban","type":"flags.3?true"},{"name":"unban","type":"flags.4?true"},{"name":"kick","type":"flags.5?true"},{"name":"unkick","type":"flags.6?true"},{"name":"promote","type":"flags.7?true"},{"name":"demote","type":"flags.8?true"},{"name":"info","type":"flags.9?true"},{"name":"settings","type":"flags.10?true"},{"name":"pinned","type":"flags.11?true"},{"name":"edit","type":"flags.12?true"},{"name":"delete","type":"flags.13?true"},{"name":"group_call","type":"flags.14?true"},{"name":"invites","type":"flags.15?true"}],"type":"ChannelAdminLogEventsFilter"},{"id":511092620,"predicate":"topPeerCategoryPhoneCalls","params":[],"type":"TopPeerCategory"},{"id":-2143067670,"predicate":"pageBlockAudio","params":[{"name":"audio_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1558266229,"predicate":"popularContact","params":[{"name":"client_id","type":"long"},{"name":"importers","type":"int"}],"type":"PopularContact"},{"id":1200788123,"predicate":"messageActionScreenshotTaken","params":[],"type":"MessageAction"},{"id":-1634752813,"predicate":"messages.favedStickersNotModified","params":[],"type":"messages.FavedStickers"},{"id":-209768682,"predicate":"messages.favedStickers","params":[{"name":"hash","type":"int"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"}],"type":"messages.FavedStickers"},{"id":-451831443,"predicate":"updateFavedStickers","params":[],"type":"Update"},{"id":-1987495099,"predicate":"updateChannelReadMessagesContents","params":[{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":-1040652646,"predicate":"inputMessagesFilterMyMentions","params":[],"type":"MessagesFilter"},{"id":1887741886,"predicate":"updateContactsReset","params":[],"type":"Update"},{"id":-1312568665,"predicate":"channelAdminLogEventActionChangeStickerSet","params":[{"name":"prev_stickerset","type":"InputStickerSet"},{"name":"new_stickerset","type":"InputStickerSet"}],"type":"ChannelAdminLogEventAction"},{"id":-85549226,"predicate":"messageActionCustomAction","params":[{"name":"message","type":"string"}],"type":"MessageAction"},{"id":178373535,"predicate":"inputPaymentCredentialsApplePay","params":[{"name":"payment_data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-419271411,"predicate":"inputMessagesFilterGeo","params":[],"type":"MessagesFilter"},{"id":-530392189,"predicate":"inputMessagesFilterContacts","params":[],"type":"MessagesFilter"},{"id":1893427255,"predicate":"updateChannelAvailableMessages","params":[{"name":"channel_id","type":"int"},{"name":"available_min_id","type":"int"}],"type":"Update"},{"id":1599903217,"predicate":"channelAdminLogEventActionTogglePreHistoryHidden","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-1759532989,"predicate":"inputMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"stopped","type":"flags.0?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.2?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"}],"type":"InputMedia"},{"id":-1186937242,"predicate":"messageMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"int"},{"name":"proximity_notification_radius","type":"flags.1?int"}],"type":"MessageMedia"},{"id":1189204285,"predicate":"recentMeUrlUnknown","params":[{"name":"url","type":"string"}],"type":"RecentMeUrl"},{"id":-1917045962,"predicate":"recentMeUrlUser","params":[{"name":"url","type":"string"},{"name":"user_id","type":"int"}],"type":"RecentMeUrl"},{"id":-1608834311,"predicate":"recentMeUrlChat","params":[{"name":"url","type":"string"},{"name":"chat_id","type":"int"}],"type":"RecentMeUrl"},{"id":-347535331,"predicate":"recentMeUrlChatInvite","params":[{"name":"url","type":"string"},{"name":"chat_invite","type":"ChatInvite"}],"type":"RecentMeUrl"},{"id":-1140172836,"predicate":"recentMeUrlStickerSet","params":[{"name":"url","type":"string"},{"name":"set","type":"StickerSetCovered"}],"type":"RecentMeUrl"},{"id":235081943,"predicate":"help.recentMeUrls","params":[{"name":"urls","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"help.RecentMeUrls"},{"id":-266911767,"predicate":"channels.channelParticipantsNotModified","params":[],"type":"channels.ChannelParticipants"},{"id":1951620897,"predicate":"messages.messagesNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Messages"},{"id":482797855,"predicate":"inputSingleMedia","params":[{"name":"flags","type":"#"},{"name":"media","type":"InputMedia"},{"name":"random_id","type":"long"},{"name":"message","type":"string"},{"name":"entities","type":"flags.0?Vector"}],"type":"InputSingleMedia"},{"id":-892779534,"predicate":"webAuthorization","params":[{"name":"hash","type":"long"},{"name":"bot_id","type":"int"},{"name":"domain","type":"string"},{"name":"browser","type":"string"},{"name":"platform","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"region","type":"string"}],"type":"WebAuthorization"},{"id":-313079300,"predicate":"account.webAuthorizations","params":[{"name":"authorizations","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.WebAuthorizations"},{"id":-1502174430,"predicate":"inputMessageID","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-1160215659,"predicate":"inputMessageReplyTo","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-2037963464,"predicate":"inputMessagePinned","params":[],"type":"InputMessage"},{"id":-1687559349,"predicate":"messageEntityPhone","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1280209983,"predicate":"messageEntityCashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1410748418,"predicate":"messageActionBotAllowed","params":[{"name":"domain","type":"string"}],"type":"MessageAction"},{"id":-55902537,"predicate":"inputDialogPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputDialogPeer"},{"id":-445792507,"predicate":"dialogPeer","params":[{"name":"peer","type":"Peer"}],"type":"DialogPeer"},{"id":223655517,"predicate":"messages.foundStickerSetsNotModified","params":[],"type":"messages.FoundStickerSets"},{"id":1359533640,"predicate":"messages.foundStickerSets","params":[{"name":"hash","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.FoundStickerSets"},{"id":1648543603,"predicate":"fileHash","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"bytes"}],"type":"FileHash"},{"id":-104284986,"predicate":"webDocumentNoProxy","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":1968737087,"predicate":"inputClientProxy","params":[{"name":"address","type":"string"},{"name":"port","type":"int"}],"type":"InputClientProxy"},{"id":-483352705,"predicate":"help.termsOfServiceUpdateEmpty","params":[{"name":"expires","type":"int"}],"type":"help.TermsOfServiceUpdate"},{"id":686618977,"predicate":"help.termsOfServiceUpdate","params":[{"name":"expires","type":"int"},{"name":"terms_of_service","type":"help.TermsOfService"}],"type":"help.TermsOfServiceUpdate"},{"id":859091184,"predicate":"inputSecureFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"InputSecureFile"},{"id":1399317950,"predicate":"inputSecureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputSecureFile"},{"id":-876089816,"predicate":"inputSecureFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":1679398724,"predicate":"secureFileEmpty","params":[],"type":"SecureFile"},{"id":-534283678,"predicate":"secureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"date","type":"int"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureFile"},{"id":-1964327229,"predicate":"secureData","params":[{"name":"data","type":"bytes"},{"name":"data_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureData"},{"id":2103482845,"predicate":"securePlainPhone","params":[{"name":"phone","type":"string"}],"type":"SecurePlainData"},{"id":569137759,"predicate":"securePlainEmail","params":[{"name":"email","type":"string"}],"type":"SecurePlainData"},{"id":-1658158621,"predicate":"secureValueTypePersonalDetails","params":[],"type":"SecureValueType"},{"id":1034709504,"predicate":"secureValueTypePassport","params":[],"type":"SecureValueType"},{"id":115615172,"predicate":"secureValueTypeDriverLicense","params":[],"type":"SecureValueType"},{"id":-1596951477,"predicate":"secureValueTypeIdentityCard","params":[],"type":"SecureValueType"},{"id":-1717268701,"predicate":"secureValueTypeInternalPassport","params":[],"type":"SecureValueType"},{"id":-874308058,"predicate":"secureValueTypeAddress","params":[],"type":"SecureValueType"},{"id":-63531698,"predicate":"secureValueTypeUtilityBill","params":[],"type":"SecureValueType"},{"id":-1995211763,"predicate":"secureValueTypeBankStatement","params":[],"type":"SecureValueType"},{"id":-1954007928,"predicate":"secureValueTypeRentalAgreement","params":[],"type":"SecureValueType"},{"id":-1713143702,"predicate":"secureValueTypePassportRegistration","params":[],"type":"SecureValueType"},{"id":-368907213,"predicate":"secureValueTypeTemporaryRegistration","params":[],"type":"SecureValueType"},{"id":-1289704741,"predicate":"secureValueTypePhone","params":[],"type":"SecureValueType"},{"id":-1908627474,"predicate":"secureValueTypeEmail","params":[],"type":"SecureValueType"},{"id":411017418,"predicate":"secureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?SecureFile"},{"name":"reverse_side","type":"flags.2?SecureFile"},{"name":"selfie","type":"flags.3?SecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"},{"name":"hash","type":"bytes"}],"type":"SecureValue"},{"id":-618540889,"predicate":"inputSecureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?InputSecureFile"},{"name":"reverse_side","type":"flags.2?InputSecureFile"},{"name":"selfie","type":"flags.3?InputSecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"}],"type":"InputSecureValue"},{"id":-316748368,"predicate":"secureValueHash","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"}],"type":"SecureValueHash"},{"id":-391902247,"predicate":"secureValueErrorData","params":[{"name":"type","type":"SecureValueType"},{"name":"data_hash","type":"bytes"},{"name":"field","type":"string"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":12467706,"predicate":"secureValueErrorFrontSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2037765467,"predicate":"secureValueErrorReverseSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-449327402,"predicate":"secureValueErrorSelfie","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2054162547,"predicate":"secureValueErrorFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":1717706985,"predicate":"secureValueErrorFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":871426631,"predicate":"secureCredentialsEncrypted","params":[{"name":"data","type":"bytes"},{"name":"hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureCredentialsEncrypted"},{"id":-1389486888,"predicate":"account.authorizationForm","params":[{"name":"flags","type":"#"},{"name":"required_types","type":"Vector"},{"name":"values","type":"Vector"},{"name":"errors","type":"Vector"},{"name":"users","type":"Vector"},{"name":"privacy_policy_url","type":"flags.0?string"}],"type":"account.AuthorizationForm"},{"id":-2128640689,"predicate":"account.sentEmailCode","params":[{"name":"email_pattern","type":"string"},{"name":"length","type":"int"}],"type":"account.SentEmailCode"},{"id":455635795,"predicate":"messageActionSecureValuesSentMe","params":[{"name":"values","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"MessageAction"},{"id":-648257196,"predicate":"messageActionSecureValuesSent","params":[{"name":"types","type":"Vector"}],"type":"MessageAction"},{"id":1722786150,"predicate":"help.deepLinkInfoEmpty","params":[],"type":"help.DeepLinkInfo"},{"id":1783556146,"predicate":"help.deepLinkInfo","params":[{"name":"flags","type":"#"},{"name":"update_app","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"help.DeepLinkInfo"},{"id":289586518,"predicate":"savedPhoneContact","params":[{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"date","type":"int"}],"type":"SavedContact"},{"id":1304052993,"predicate":"account.takeout","params":[{"name":"id","type":"long"}],"type":"account.Takeout"},{"id":700340377,"predicate":"inputTakeoutFileLocation","params":[],"type":"InputFileLocation"},{"id":-513517117,"predicate":"updateDialogUnreadMark","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-253500010,"predicate":"messages.dialogsNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Dialogs"},{"id":-1625153079,"predicate":"inputWebFileGeoPointLocation","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"access_hash","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"zoom","type":"int"},{"name":"scale","type":"int"}],"type":"InputWebFileLocation"},{"id":-1255369827,"predicate":"contacts.topPeersDisabled","params":[],"type":"contacts.TopPeers"},{"id":-1685456582,"predicate":"inputReportReasonCopyright","params":[],"type":"ReportReason"},{"id":-732254058,"predicate":"passwordKdfAlgoUnknown","params":[],"type":"PasswordKdfAlgo"},{"id":4883767,"predicate":"securePasswordKdfAlgoUnknown","params":[],"type":"SecurePasswordKdfAlgo"},{"id":-1141711456,"predicate":"securePasswordKdfAlgoPBKDF2HMACSHA512iter100000","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":-2042159726,"predicate":"securePasswordKdfAlgoSHA512","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":354925740,"predicate":"secureSecretSettings","params":[{"name":"secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_secret","type":"bytes"},{"name":"secure_secret_id","type":"long"}],"type":"SecureSecretSettings"},{"id":982592842,"predicate":"passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow","params":[{"name":"salt1","type":"bytes"},{"name":"salt2","type":"bytes"},{"name":"g","type":"int"},{"name":"p","type":"bytes"}],"type":"PasswordKdfAlgo"},{"id":-1736378792,"predicate":"inputCheckPasswordEmpty","params":[],"type":"InputCheckPasswordSRP"},{"id":-763367294,"predicate":"inputCheckPasswordSRP","params":[{"name":"srp_id","type":"long"},{"name":"A","type":"bytes"},{"name":"M1","type":"bytes"}],"type":"InputCheckPasswordSRP"},{"id":-2036501105,"predicate":"secureValueError","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-1592506512,"predicate":"secureValueErrorTranslationFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":878931416,"predicate":"secureValueErrorTranslationFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2103600678,"predicate":"secureRequiredType","params":[{"name":"flags","type":"#"},{"name":"native_names","type":"flags.0?true"},{"name":"selfie_required","type":"flags.1?true"},{"name":"translation_required","type":"flags.2?true"},{"name":"type","type":"SecureValueType"}],"type":"SecureRequiredType"},{"id":41187252,"predicate":"secureRequiredTypeOneOf","params":[{"name":"types","type":"Vector"}],"type":"SecureRequiredType"},{"id":-1078332329,"predicate":"help.passportConfigNotModified","params":[],"type":"help.PassportConfig"},{"id":-1600596305,"predicate":"help.passportConfig","params":[{"name":"hash","type":"int"},{"name":"countries_langs","type":"DataJSON"}],"type":"help.PassportConfig"},{"id":488313413,"predicate":"inputAppEvent","params":[{"name":"time","type":"double"},{"name":"type","type":"string"},{"name":"peer","type":"long"},{"name":"data","type":"JSONValue"}],"type":"InputAppEvent"},{"id":-1059185703,"predicate":"jsonObjectValue","params":[{"name":"key","type":"string"},{"name":"value","type":"JSONValue"}],"type":"JSONObjectValue"},{"id":1064139624,"predicate":"jsonNull","params":[],"type":"JSONValue"},{"id":-952869270,"predicate":"jsonBool","params":[{"name":"value","type":"Bool"}],"type":"JSONValue"},{"id":736157604,"predicate":"jsonNumber","params":[{"name":"value","type":"double"}],"type":"JSONValue"},{"id":-1222740358,"predicate":"jsonString","params":[{"name":"value","type":"string"}],"type":"JSONValue"},{"id":-146520221,"predicate":"jsonArray","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":-1715350371,"predicate":"jsonObject","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":-1311015810,"predicate":"inputNotifyBroadcasts","params":[],"type":"InputNotifyPeer"},{"id":-703403793,"predicate":"notifyBroadcasts","params":[],"type":"NotifyPeer"},{"id":-311786236,"predicate":"textSubscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-939827711,"predicate":"textSuperscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":55281185,"predicate":"textMarked","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":483104362,"predicate":"textPhone","params":[{"name":"text","type":"RichText"},{"name":"phone","type":"string"}],"type":"RichText"},{"id":136105807,"predicate":"textImage","params":[{"name":"document_id","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"RichText"},{"id":504660880,"predicate":"pageBlockKicker","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":878078826,"predicate":"pageTableCell","params":[{"name":"flags","type":"#"},{"name":"header","type":"flags.0?true"},{"name":"align_center","type":"flags.3?true"},{"name":"align_right","type":"flags.4?true"},{"name":"valign_middle","type":"flags.5?true"},{"name":"valign_bottom","type":"flags.6?true"},{"name":"text","type":"flags.7?RichText"},{"name":"colspan","type":"flags.1?int"},{"name":"rowspan","type":"flags.2?int"}],"type":"PageTableCell"},{"id":-524237339,"predicate":"pageTableRow","params":[{"name":"cells","type":"Vector"}],"type":"PageTableRow"},{"id":-1085412734,"predicate":"pageBlockTable","params":[{"name":"flags","type":"#"},{"name":"bordered","type":"flags.0?true"},{"name":"striped","type":"flags.1?true"},{"name":"title","type":"RichText"},{"name":"rows","type":"Vector"}],"type":"PageBlock"},{"id":1869903447,"predicate":"pageCaption","params":[{"name":"text","type":"RichText"},{"name":"credit","type":"RichText"}],"type":"PageCaption"},{"id":-1188055347,"predicate":"pageListItemText","params":[{"name":"text","type":"RichText"}],"type":"PageListItem"},{"id":635466748,"predicate":"pageListItemBlocks","params":[{"name":"blocks","type":"Vector"}],"type":"PageListItem"},{"id":1577484359,"predicate":"pageListOrderedItemText","params":[{"name":"num","type":"string"},{"name":"text","type":"RichText"}],"type":"PageListOrderedItem"},{"id":-1730311882,"predicate":"pageListOrderedItemBlocks","params":[{"name":"num","type":"string"},{"name":"blocks","type":"Vector"}],"type":"PageListOrderedItem"},{"id":-1702174239,"predicate":"pageBlockOrderedList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":1987480557,"predicate":"pageBlockDetails","params":[{"name":"flags","type":"#"},{"name":"open","type":"flags.0?true"},{"name":"blocks","type":"Vector"},{"name":"title","type":"RichText"}],"type":"PageBlock"},{"id":-1282352120,"predicate":"pageRelatedArticle","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"title","type":"flags.0?string"},{"name":"description","type":"flags.1?string"},{"name":"photo_id","type":"flags.2?long"},{"name":"author","type":"flags.3?string"},{"name":"published_date","type":"flags.4?int"}],"type":"PageRelatedArticle"},{"id":370236054,"predicate":"pageBlockRelatedArticles","params":[{"name":"title","type":"RichText"},{"name":"articles","type":"Vector"}],"type":"PageBlock"},{"id":-1538310410,"predicate":"pageBlockMap","params":[{"name":"geo","type":"GeoPoint"},{"name":"zoom","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-1738178803,"predicate":"page","params":[{"name":"flags","type":"#"},{"name":"part","type":"flags.0?true"},{"name":"rtl","type":"flags.1?true"},{"name":"v2","type":"flags.2?true"},{"name":"url","type":"string"},{"name":"blocks","type":"Vector"},{"name":"photos","type":"Vector"},{"name":"documents","type":"Vector"},{"name":"views","type":"flags.3?int"}],"type":"Page"},{"id":-610373422,"predicate":"inputPrivacyKeyPhoneP2P","params":[],"type":"InputPrivacyKey"},{"id":961092808,"predicate":"privacyKeyPhoneP2P","params":[],"type":"PrivacyKey"},{"id":894777186,"predicate":"textAnchor","params":[{"name":"text","type":"RichText"},{"name":"name","type":"string"}],"type":"RichText"},{"id":-1945767479,"predicate":"help.supportName","params":[{"name":"name","type":"string"}],"type":"help.SupportName"},{"id":-206688531,"predicate":"help.userInfoEmpty","params":[],"type":"help.UserInfo"},{"id":32192344,"predicate":"help.userInfo","params":[{"name":"message","type":"string"},{"name":"entities","type":"Vector"},{"name":"author","type":"string"},{"name":"date","type":"int"}],"type":"help.UserInfo"},{"id":-202219658,"predicate":"messageActionContactSignUp","params":[],"type":"MessageAction"},{"id":-1398708869,"predicate":"updateMessagePoll","params":[{"name":"flags","type":"#"},{"name":"poll_id","type":"long"},{"name":"poll","type":"flags.0?Poll"},{"name":"results","type":"PollResults"}],"type":"Update"},{"id":1823064809,"predicate":"pollAnswer","params":[{"name":"text","type":"string"},{"name":"option","type":"bytes"}],"type":"PollAnswer"},{"id":-2032041631,"predicate":"poll","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"closed","type":"flags.0?true"},{"name":"public_voters","type":"flags.1?true"},{"name":"multiple_choice","type":"flags.2?true"},{"name":"quiz","type":"flags.3?true"},{"name":"question","type":"string"},{"name":"answers","type":"Vector"},{"name":"close_period","type":"flags.4?int"},{"name":"close_date","type":"flags.5?int"}],"type":"Poll"},{"id":997055186,"predicate":"pollAnswerVoters","params":[{"name":"flags","type":"#"},{"name":"chosen","type":"flags.0?true"},{"name":"correct","type":"flags.1?true"},{"name":"option","type":"bytes"},{"name":"voters","type":"int"}],"type":"PollAnswerVoters"},{"id":-1159937629,"predicate":"pollResults","params":[{"name":"flags","type":"#"},{"name":"min","type":"flags.0?true"},{"name":"results","type":"flags.1?Vector"},{"name":"total_voters","type":"flags.2?int"},{"name":"recent_voters","type":"flags.3?Vector"},{"name":"solution","type":"flags.4?string"},{"name":"solution_entities","type":"flags.4?Vector"}],"type":"PollResults"},{"id":261416433,"predicate":"inputMediaPoll","params":[{"name":"flags","type":"#"},{"name":"poll","type":"Poll"},{"name":"correct_answers","type":"flags.0?Vector"},{"name":"solution","type":"flags.1?string"},{"name":"solution_entities","type":"flags.1?Vector"}],"type":"InputMedia"},{"id":1272375192,"predicate":"messageMediaPoll","params":[{"name":"poll","type":"Poll"},{"name":"results","type":"PollResults"}],"type":"MessageMedia"},{"id":-264117680,"predicate":"chatOnlines","params":[{"name":"onlines","type":"int"}],"type":"ChatOnlines"},{"id":1202287072,"predicate":"statsURL","params":[{"name":"url","type":"string"}],"type":"StatsURL"},{"id":-525288402,"predicate":"photoStrippedSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":1605510357,"predicate":"chatAdminRights","params":[{"name":"flags","type":"#"},{"name":"change_info","type":"flags.0?true"},{"name":"post_messages","type":"flags.1?true"},{"name":"edit_messages","type":"flags.2?true"},{"name":"delete_messages","type":"flags.3?true"},{"name":"ban_users","type":"flags.4?true"},{"name":"invite_users","type":"flags.5?true"},{"name":"pin_messages","type":"flags.7?true"},{"name":"add_admins","type":"flags.9?true"},{"name":"anonymous","type":"flags.10?true"},{"name":"manage_call","type":"flags.11?true"},{"name":"other","type":"flags.12?true"}],"type":"ChatAdminRights"},{"id":-1626209256,"predicate":"chatBannedRights","params":[{"name":"flags","type":"#"},{"name":"view_messages","type":"flags.0?true"},{"name":"send_messages","type":"flags.1?true"},{"name":"send_media","type":"flags.2?true"},{"name":"send_stickers","type":"flags.3?true"},{"name":"send_gifs","type":"flags.4?true"},{"name":"send_games","type":"flags.5?true"},{"name":"send_inline","type":"flags.6?true"},{"name":"embed_links","type":"flags.7?true"},{"name":"send_polls","type":"flags.8?true"},{"name":"change_info","type":"flags.10?true"},{"name":"invite_users","type":"flags.15?true"},{"name":"pin_messages","type":"flags.17?true"},{"name":"until_date","type":"int"}],"type":"ChatBannedRights"},{"id":1421875280,"predicate":"updateChatDefaultBannedRights","params":[{"name":"peer","type":"Peer"},{"name":"default_banned_rights","type":"ChatBannedRights"},{"name":"version","type":"int"}],"type":"Update"},{"id":-433014407,"predicate":"inputWallPaper","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputWallPaper"},{"id":1913199744,"predicate":"inputWallPaperSlug","params":[{"name":"slug","type":"string"}],"type":"InputWallPaper"},{"id":-1150621555,"predicate":"channelParticipantsContacts","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":771095562,"predicate":"channelAdminLogEventActionDefaultBannedRights","params":[{"name":"prev_banned_rights","type":"ChatBannedRights"},{"name":"new_banned_rights","type":"ChatBannedRights"}],"type":"ChannelAdminLogEventAction"},{"id":-1895328189,"predicate":"channelAdminLogEventActionStopPoll","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":471437699,"predicate":"account.wallPapersNotModified","params":[],"type":"account.WallPapers"},{"id":1881892265,"predicate":"account.wallPapers","params":[{"name":"hash","type":"int"},{"name":"wallpapers","type":"Vector"}],"type":"account.WallPapers"},{"id":-557924733,"predicate":"codeSettings","params":[{"name":"flags","type":"#"},{"name":"allow_flashcall","type":"flags.0?true"},{"name":"current_number","type":"flags.1?true"},{"name":"allow_app_hash","type":"flags.4?true"}],"type":"CodeSettings"},{"id":499236004,"predicate":"wallPaperSettings","params":[{"name":"flags","type":"#"},{"name":"blur","type":"flags.1?true"},{"name":"motion","type":"flags.2?true"},{"name":"background_color","type":"flags.0?int"},{"name":"second_background_color","type":"flags.4?int"},{"name":"third_background_color","type":"flags.5?int"},{"name":"fourth_background_color","type":"flags.6?int"},{"name":"intensity","type":"flags.3?int"},{"name":"rotation","type":"flags.4?int"}],"type":"WallPaperSettings"},{"id":-532532493,"predicate":"autoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"disabled","type":"flags.0?true"},{"name":"video_preload_large","type":"flags.1?true"},{"name":"audio_preload_next","type":"flags.2?true"},{"name":"phonecalls_less_data","type":"flags.3?true"},{"name":"photo_size_max","type":"int"},{"name":"video_size_max","type":"int"},{"name":"file_size_max","type":"int"},{"name":"video_upload_maxbitrate","type":"int"}],"type":"AutoDownloadSettings"},{"id":1674235686,"predicate":"account.autoDownloadSettings","params":[{"name":"low","type":"AutoDownloadSettings"},{"name":"medium","type":"AutoDownloadSettings"},{"name":"high","type":"AutoDownloadSettings"}],"type":"account.AutoDownloadSettings"},{"id":-709641735,"predicate":"emojiKeyword","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":594408994,"predicate":"emojiKeywordDeleted","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":1556570557,"predicate":"emojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"keywords","type":"Vector"}],"type":"EmojiKeywordsDifference"},{"id":-1519029347,"predicate":"emojiURL","params":[{"name":"url","type":"string"}],"type":"EmojiURL"},{"id":-1275374751,"predicate":"emojiLanguage","params":[{"name":"lang_code","type":"string"}],"type":"EmojiLanguage"},{"id":-1529000952,"predicate":"inputPrivacyKeyForwards","params":[],"type":"InputPrivacyKey"},{"id":1777096355,"predicate":"privacyKeyForwards","params":[],"type":"PrivacyKey"},{"id":1461304012,"predicate":"inputPrivacyKeyProfilePhoto","params":[],"type":"InputPrivacyKey"},{"id":-1777000467,"predicate":"privacyKeyProfilePhoto","params":[],"type":"PrivacyKey"},{"id":1075322878,"predicate":"inputPhotoFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":-667654413,"predicate":"inputPhotoLegacyFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"}],"type":"InputFileLocation"},{"id":925204121,"predicate":"inputPeerPhotoFileLocation","params":[{"name":"flags","type":"#"},{"name":"big","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"long"}],"type":"InputFileLocation"},{"id":-1652231205,"predicate":"inputStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb_version","type":"int"}],"type":"InputFileLocation"},{"id":-11252123,"predicate":"folder","params":[{"name":"flags","type":"#"},{"name":"autofill_new_broadcasts","type":"flags.0?true"},{"name":"autofill_public_groups","type":"flags.1?true"},{"name":"autofill_new_correspondents","type":"flags.2?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"flags.3?ChatPhoto"}],"type":"Folder"},{"id":1908216652,"predicate":"dialogFolder","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"folder","type":"Folder"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"unread_muted_peers_count","type":"int"},{"name":"unread_unmuted_peers_count","type":"int"},{"name":"unread_muted_messages_count","type":"int"},{"name":"unread_unmuted_messages_count","type":"int"}],"type":"Dialog"},{"id":1684014375,"predicate":"inputDialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"InputDialogPeer"},{"id":1363483106,"predicate":"dialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"DialogPeer"},{"id":-70073706,"predicate":"inputFolderPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"folder_id","type":"int"}],"type":"InputFolderPeer"},{"id":-373643672,"predicate":"folderPeer","params":[{"name":"peer","type":"Peer"},{"name":"folder_id","type":"int"}],"type":"FolderPeer"},{"id":422972864,"predicate":"updateFolderPeers","params":[{"name":"folder_peers","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":756118935,"predicate":"inputUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"int"}],"type":"InputUser"},{"id":707290417,"predicate":"inputChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"int"}],"type":"InputChannel"},{"id":398123750,"predicate":"inputPeerUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"int"}],"type":"InputPeer"},{"id":-1667893317,"predicate":"inputPeerChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"int"}],"type":"InputPeer"},{"id":55761658,"predicate":"inputPrivacyKeyPhoneNumber","params":[],"type":"InputPrivacyKey"},{"id":-778378131,"predicate":"privacyKeyPhoneNumber","params":[],"type":"PrivacyKey"},{"id":-1472172887,"predicate":"topPeerCategoryForwardUsers","params":[],"type":"TopPeerCategory"},{"id":-68239120,"predicate":"topPeerCategoryForwardChats","params":[],"type":"TopPeerCategory"},{"id":-1569748965,"predicate":"channelAdminLogEventActionChangeLinkedChat","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":-398136321,"predicate":"messages.searchCounter","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"filter","type":"MessagesFilter"},{"name":"count","type":"int"}],"type":"messages.SearchCounter"},{"id":280464681,"predicate":"keyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.0?string"},{"name":"url","type":"string"},{"name":"button_id","type":"int"}],"type":"KeyboardButton"},{"id":-802258988,"predicate":"inputKeyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.1?string"},{"name":"url","type":"string"},{"name":"bot","type":"InputUser"}],"type":"KeyboardButton"},{"id":-1831650802,"predicate":"urlAuthResultRequest","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"bot","type":"User"},{"name":"domain","type":"string"}],"type":"UrlAuthResult"},{"id":-1886646706,"predicate":"urlAuthResultAccepted","params":[{"name":"url","type":"string"}],"type":"UrlAuthResult"},{"id":-1445536993,"predicate":"urlAuthResultDefault","params":[],"type":"UrlAuthResult"},{"id":1283572154,"predicate":"inputPrivacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-668769361,"predicate":"inputPrivacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":415136107,"predicate":"privacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":-1397881200,"predicate":"privacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":-1672577397,"predicate":"messageEntityUnderline","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1090087980,"predicate":"messageEntityStrike","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":34469328,"predicate":"messageEntityBlockquote","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1786671974,"predicate":"updatePeerSettings","params":[{"name":"peer","type":"Peer"},{"name":"settings","type":"PeerSettings"}],"type":"Update"},{"id":-1078612597,"predicate":"channelLocationEmpty","params":[],"type":"ChannelLocation"},{"id":547062491,"predicate":"channelLocation","params":[{"name":"geo_point","type":"GeoPoint"},{"name":"address","type":"string"}],"type":"ChannelLocation"},{"id":-901375139,"predicate":"peerLocated","params":[{"name":"peer","type":"Peer"},{"name":"expires","type":"int"},{"name":"distance","type":"int"}],"type":"PeerLocated"},{"id":-1263546448,"predicate":"updatePeerLocated","params":[{"name":"peers","type":"Vector"}],"type":"Update"},{"id":241923758,"predicate":"channelAdminLogEventActionChangeLocation","params":[{"name":"prev_value","type":"ChannelLocation"},{"name":"new_value","type":"ChannelLocation"}],"type":"ChannelAdminLogEventAction"},{"id":-606798099,"predicate":"inputReportReasonGeoIrrelevant","params":[],"type":"ReportReason"},{"id":1401984889,"predicate":"channelAdminLogEventActionToggleSlowMode","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":1148485274,"predicate":"auth.authorizationSignUpRequired","params":[{"name":"flags","type":"#"},{"name":"terms_of_service","type":"flags.0?help.TermsOfService"}],"type":"auth.Authorization"},{"id":-666824391,"predicate":"payments.paymentVerificationNeeded","params":[{"name":"url","type":"string"}],"type":"payments.PaymentResult"},{"id":42402760,"predicate":"inputStickerSetAnimatedEmoji","params":[],"type":"InputStickerSet"},{"id":967122427,"predicate":"updateNewScheduledMessage","params":[{"name":"message","type":"Message"}],"type":"Update"},{"id":-1870238482,"predicate":"updateDeleteScheduledMessages","params":[{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":-797791052,"predicate":"restrictionReason","params":[{"name":"platform","type":"string"},{"name":"reason","type":"string"},{"name":"text","type":"string"}],"type":"RestrictionReason"},{"id":1012306921,"predicate":"inputTheme","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputTheme"},{"id":-175567375,"predicate":"inputThemeSlug","params":[{"name":"slug","type":"string"}],"type":"InputTheme"},{"id":42930452,"predicate":"theme","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?Document"},{"name":"settings","type":"flags.3?ThemeSettings"},{"name":"installs_count","type":"int"}],"type":"Theme"},{"id":-199313886,"predicate":"account.themesNotModified","params":[],"type":"account.Themes"},{"id":2137482273,"predicate":"account.themes","params":[{"name":"hash","type":"int"},{"name":"themes","type":"Vector"}],"type":"account.Themes"},{"id":-2112423005,"predicate":"updateTheme","params":[{"name":"theme","type":"Theme"}],"type":"Update"},{"id":-786326563,"predicate":"inputPrivacyKeyAddedByPhone","params":[],"type":"InputPrivacyKey"},{"id":1124062251,"predicate":"privacyKeyAddedByPhone","params":[],"type":"PrivacyKey"},{"id":-2027964103,"predicate":"updateGeoLiveViewed","params":[{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"}],"type":"Update"},{"id":1448076945,"predicate":"updateLoginToken","params":[],"type":"Update"},{"id":1654593920,"predicate":"auth.loginToken","params":[{"name":"expires","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":110008598,"predicate":"auth.loginTokenMigrateTo","params":[{"name":"dc_id","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":957176926,"predicate":"auth.loginTokenSuccess","params":[{"name":"authorization","type":"auth.Authorization"}],"type":"auth.LoginToken"},{"id":1474462241,"predicate":"account.contentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"},{"name":"sensitive_can_change","type":"flags.1?true"}],"type":"account.ContentSettings"},{"id":-1456996667,"predicate":"messages.inactiveChats","params":[{"name":"dates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.InactiveChats"},{"id":-1012849566,"predicate":"baseThemeClassic","params":[],"type":"BaseTheme"},{"id":-69724536,"predicate":"baseThemeDay","params":[],"type":"BaseTheme"},{"id":-1212997976,"predicate":"baseThemeNight","params":[],"type":"BaseTheme"},{"id":1834973166,"predicate":"baseThemeTinted","params":[],"type":"BaseTheme"},{"id":1527845466,"predicate":"baseThemeArctic","params":[],"type":"BaseTheme"},{"id":-1770371538,"predicate":"inputWallPaperNoFile","params":[{"name":"id","type":"long"}],"type":"InputWallPaper"},{"id":-528465642,"predicate":"wallPaperNoFile","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"default","type":"flags.1?true"},{"name":"dark","type":"flags.4?true"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":-1118798639,"predicate":"inputThemeSettings","params":[{"name":"flags","type":"#"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"message_top_color","type":"flags.0?int"},{"name":"message_bottom_color","type":"flags.0?int"},{"name":"wallpaper","type":"flags.1?InputWallPaper"},{"name":"wallpaper_settings","type":"flags.1?WallPaperSettings"}],"type":"InputThemeSettings"},{"id":-1676371894,"predicate":"themeSettings","params":[{"name":"flags","type":"#"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"message_top_color","type":"flags.0?int"},{"name":"message_bottom_color","type":"flags.0?int"},{"name":"wallpaper","type":"flags.1?WallPaper"}],"type":"ThemeSettings"},{"id":1421174295,"predicate":"webPageAttributeTheme","params":[{"name":"flags","type":"#"},{"name":"documents","type":"flags.0?Vector"},{"name":"settings","type":"flags.1?ThemeSettings"}],"type":"WebPageAttribute"},{"id":938909451,"predicate":"updateMessagePollVote","params":[{"name":"poll_id","type":"long"},{"name":"user_id","type":"int"},{"name":"options","type":"Vector"},{"name":"qts","type":"int"}],"type":"Update"},{"id":-1567730343,"predicate":"messageUserVote","params":[{"name":"user_id","type":"int"},{"name":"option","type":"bytes"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":909603888,"predicate":"messageUserVoteInputOption","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":244310238,"predicate":"messageUserVoteMultiple","params":[{"name":"user_id","type":"int"},{"name":"options","type":"Vector"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":136574537,"predicate":"messages.votesList","params":[{"name":"flags","type":"#"},{"name":"count","type":"int"},{"name":"votes","type":"Vector"},{"name":"users","type":"Vector"},{"name":"next_offset","type":"flags.0?string"}],"type":"messages.VotesList"},{"id":-1144565411,"predicate":"keyboardButtonRequestPoll","params":[{"name":"flags","type":"#"},{"name":"quiz","type":"flags.0?Bool"},{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":1981704948,"predicate":"messageEntityBankCard","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-177732982,"predicate":"bankCardOpenUrl","params":[{"name":"url","type":"string"},{"name":"name","type":"string"}],"type":"BankCardOpenUrl"},{"id":1042605427,"predicate":"payments.bankCardData","params":[{"name":"title","type":"string"},{"name":"open_urls","type":"Vector"}],"type":"payments.BankCardData"},{"id":-118740917,"predicate":"peerSelfLocated","params":[{"name":"expires","type":"int"}],"type":"PeerLocated"},{"id":1949890536,"predicate":"dialogFilter","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"non_contacts","type":"flags.1?true"},{"name":"groups","type":"flags.2?true"},{"name":"broadcasts","type":"flags.3?true"},{"name":"bots","type":"flags.4?true"},{"name":"exclude_muted","type":"flags.11?true"},{"name":"exclude_read","type":"flags.12?true"},{"name":"exclude_archived","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"emoticon","type":"flags.25?string"},{"name":"pinned_peers","type":"Vector"},{"name":"include_peers","type":"Vector"},{"name":"exclude_peers","type":"Vector"}],"type":"DialogFilter"},{"id":2004110666,"predicate":"dialogFilterSuggested","params":[{"name":"filter","type":"DialogFilter"},{"name":"description","type":"string"}],"type":"DialogFilterSuggested"},{"id":654302845,"predicate":"updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Update"},{"id":-1512627963,"predicate":"updateDialogFilterOrder","params":[{"name":"order","type":"Vector"}],"type":"Update"},{"id":889491791,"predicate":"updateDialogFilters","params":[],"type":"Update"},{"id":-1237848657,"predicate":"statsDateRangeDays","params":[{"name":"min_date","type":"int"},{"name":"max_date","type":"int"}],"type":"StatsDateRangeDays"},{"id":-884757282,"predicate":"statsAbsValueAndPrev","params":[{"name":"current","type":"double"},{"name":"previous","type":"double"}],"type":"StatsAbsValueAndPrev"},{"id":-875679776,"predicate":"statsPercentValue","params":[{"name":"part","type":"double"},{"name":"total","type":"double"}],"type":"StatsPercentValue"},{"id":1244130093,"predicate":"statsGraphAsync","params":[{"name":"token","type":"string"}],"type":"StatsGraph"},{"id":-1092839390,"predicate":"statsGraphError","params":[{"name":"error","type":"string"}],"type":"StatsGraph"},{"id":-1901828938,"predicate":"statsGraph","params":[{"name":"flags","type":"#"},{"name":"json","type":"DataJSON"},{"name":"zoom_token","type":"flags.0?string"}],"type":"StatsGraph"},{"id":-1387279939,"predicate":"messageInteractionCounters","params":[{"name":"msg_id","type":"int"},{"name":"views","type":"int"},{"name":"forwards","type":"int"}],"type":"MessageInteractionCounters"},{"id":-1107852396,"predicate":"stats.broadcastStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"followers","type":"StatsAbsValueAndPrev"},{"name":"views_per_post","type":"StatsAbsValueAndPrev"},{"name":"shares_per_post","type":"StatsAbsValueAndPrev"},{"name":"enabled_notifications","type":"StatsPercentValue"},{"name":"growth_graph","type":"StatsGraph"},{"name":"followers_graph","type":"StatsGraph"},{"name":"mute_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"interactions_graph","type":"StatsGraph"},{"name":"iv_interactions_graph","type":"StatsGraph"},{"name":"views_by_source_graph","type":"StatsGraph"},{"name":"new_followers_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"recent_message_interactions","type":"Vector"}],"type":"stats.BroadcastStats"},{"id":-428884101,"predicate":"inputMediaDice","params":[{"name":"emoticon","type":"string"}],"type":"InputMedia"},{"id":1065280907,"predicate":"messageMediaDice","params":[{"name":"value","type":"int"},{"name":"emoticon","type":"string"}],"type":"MessageMedia"},{"id":-427863538,"predicate":"inputStickerSetDice","params":[{"name":"emoticon","type":"string"}],"type":"InputStickerSet"},{"id":-1728664459,"predicate":"help.promoDataEmpty","params":[{"name":"expires","type":"int"}],"type":"help.PromoData"},{"id":-1942390465,"predicate":"help.promoData","params":[{"name":"flags","type":"#"},{"name":"proxy","type":"flags.0?true"},{"name":"expires","type":"int"},{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"psa_type","type":"flags.1?string"},{"name":"psa_message","type":"flags.2?string"}],"type":"help.PromoData"},{"id":-567037804,"predicate":"videoSize","params":[{"name":"flags","type":"#"},{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"},{"name":"video_start_ts","type":"flags.0?double"}],"type":"VideoSize"},{"id":643940105,"predicate":"updatePhoneCallSignalingData","params":[{"name":"phone_call_id","type":"long"},{"name":"data","type":"bytes"}],"type":"Update"},{"id":1634294960,"predicate":"chatInvitePeek","params":[{"name":"chat","type":"Chat"},{"name":"expires","type":"int"}],"type":"ChatInvite"},{"id":418631927,"predicate":"statsGroupTopPoster","params":[{"name":"user_id","type":"int"},{"name":"messages","type":"int"},{"name":"avg_chars","type":"int"}],"type":"StatsGroupTopPoster"},{"id":1611985938,"predicate":"statsGroupTopAdmin","params":[{"name":"user_id","type":"int"},{"name":"deleted","type":"int"},{"name":"kicked","type":"int"},{"name":"banned","type":"int"}],"type":"StatsGroupTopAdmin"},{"id":831924812,"predicate":"statsGroupTopInviter","params":[{"name":"user_id","type":"int"},{"name":"invitations","type":"int"}],"type":"StatsGroupTopInviter"},{"id":-276825834,"predicate":"stats.megagroupStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"members","type":"StatsAbsValueAndPrev"},{"name":"messages","type":"StatsAbsValueAndPrev"},{"name":"viewers","type":"StatsAbsValueAndPrev"},{"name":"posters","type":"StatsAbsValueAndPrev"},{"name":"growth_graph","type":"StatsGraph"},{"name":"members_graph","type":"StatsGraph"},{"name":"new_members_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"messages_graph","type":"StatsGraph"},{"name":"actions_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"weekdays_graph","type":"StatsGraph"},{"name":"top_posters","type":"Vector"},{"name":"top_admins","type":"Vector"},{"name":"top_inviters","type":"Vector"},{"name":"users","type":"Vector"}],"type":"stats.MegagroupStats"},{"id":-1096616924,"predicate":"globalPrivacySettings","params":[{"name":"flags","type":"#"},{"name":"archive_and_mute_new_noncontact_peers","type":"flags.0?Bool"}],"type":"GlobalPrivacySettings"},{"id":1667228533,"predicate":"phoneConnectionWebrtc","params":[{"name":"flags","type":"#"},{"name":"turn","type":"flags.0?true"},{"name":"stun","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"username","type":"string"},{"name":"password","type":"string"}],"type":"PhoneConnection"},{"id":1107543535,"predicate":"help.countryCode","params":[{"name":"flags","type":"#"},{"name":"country_code","type":"string"},{"name":"prefixes","type":"flags.0?Vector"},{"name":"patterns","type":"flags.1?Vector"}],"type":"help.CountryCode"},{"id":-1014526429,"predicate":"help.country","params":[{"name":"flags","type":"#"},{"name":"hidden","type":"flags.0?true"},{"name":"iso2","type":"string"},{"name":"default_name","type":"string"},{"name":"name","type":"flags.1?string"},{"name":"country_codes","type":"Vector"}],"type":"help.Country"},{"id":-1815339214,"predicate":"help.countriesListNotModified","params":[],"type":"help.CountriesList"},{"id":-2016381538,"predicate":"help.countriesList","params":[{"name":"countries","type":"Vector"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":1163625789,"predicate":"messageViews","params":[{"name":"flags","type":"#"},{"name":"views","type":"flags.0?int"},{"name":"forwards","type":"flags.1?int"},{"name":"replies","type":"flags.2?MessageReplies"}],"type":"MessageViews"},{"id":1854571743,"predicate":"updateChannelMessageForwards","params":[{"name":"channel_id","type":"int"},{"name":"id","type":"int"},{"name":"forwards","type":"int"}],"type":"Update"},{"id":-96535659,"predicate":"photoSizeProgressive","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"sizes","type":"Vector"}],"type":"PhotoSize"},{"id":-1228606141,"predicate":"messages.messageViews","params":[{"name":"views","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.MessageViews"},{"id":482860628,"predicate":"updateReadChannelDiscussionInbox","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"},{"name":"broadcast_id","type":"flags.0?int"},{"name":"broadcast_post","type":"flags.0?int"}],"type":"Update"},{"id":1178116716,"predicate":"updateReadChannelDiscussionOutbox","params":[{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Update"},{"id":-170029155,"predicate":"messages.discussionMessage","params":[{"name":"flags","type":"#"},{"name":"messages","type":"Vector"},{"name":"max_id","type":"flags.0?int"},{"name":"read_inbox_max_id","type":"flags.1?int"},{"name":"read_outbox_max_id","type":"flags.2?int"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.DiscussionMessage"},{"id":-1495959709,"predicate":"messageReplyHeader","params":[{"name":"flags","type":"#"},{"name":"reply_to_msg_id","type":"int"},{"name":"reply_to_peer_id","type":"flags.0?Peer"},{"name":"reply_to_top_id","type":"flags.1?int"}],"type":"MessageReplyHeader"},{"id":1093204652,"predicate":"messageReplies","params":[{"name":"flags","type":"#"},{"name":"comments","type":"flags.0?true"},{"name":"replies","type":"int"},{"name":"replies_pts","type":"int"},{"name":"recent_repliers","type":"flags.1?Vector"},{"name":"channel_id","type":"flags.0?int"},{"name":"max_id","type":"flags.2?int"},{"name":"read_max_id","type":"flags.3?int"}],"type":"MessageReplies"},{"id":610945826,"predicate":"updatePeerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"blocked","type":"Bool"}],"type":"Update"},{"id":-386039788,"predicate":"peerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"date","type":"int"}],"type":"PeerBlocked"},{"id":1796675352,"predicate":"updateChannelUserTyping","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-1392895362,"predicate":"inputMessageCallbackQuery","params":[{"name":"id","type":"int"},{"name":"query_id","type":"long"}],"type":"InputMessage"},{"id":453242886,"predicate":"channelParticipantLeft","params":[{"name":"peer","type":"Peer"}],"type":"ChannelParticipant"},{"id":-531931925,"predicate":"channelParticipantsMentions","params":[{"name":"flags","type":"#"},{"name":"q","type":"flags.0?string"},{"name":"top_msg_id","type":"flags.1?int"}],"type":"ChannelParticipantsFilter"},{"id":-309990731,"predicate":"updatePinnedMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-2054649973,"predicate":"updatePinnedChannelMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":464520273,"predicate":"inputMessagesFilterPinned","params":[],"type":"MessagesFilter"},{"id":-1986399595,"predicate":"stats.messageStats","params":[{"name":"views_graph","type":"StatsGraph"}],"type":"stats.MessageStats"},{"id":-1730095465,"predicate":"messageActionGeoProximityReached","params":[{"name":"from_id","type":"Peer"},{"name":"to_id","type":"Peer"},{"name":"distance","type":"int"}],"type":"MessageAction"},{"id":-668906175,"predicate":"photoPathSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":-651419003,"predicate":"speakingInGroupCallAction","params":[],"type":"SendMessageAction"},{"id":2004925620,"predicate":"groupCallDiscarded","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"duration","type":"int"}],"type":"GroupCall"},{"id":-711498484,"predicate":"groupCall","params":[{"name":"flags","type":"#"},{"name":"join_muted","type":"flags.1?true"},{"name":"can_change_join_muted","type":"flags.2?true"},{"name":"join_date_asc","type":"flags.6?true"},{"name":"schedule_start_subscribed","type":"flags.8?true"},{"name":"can_start_video","type":"flags.9?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"participants_count","type":"int"},{"name":"title","type":"flags.3?string"},{"name":"stream_dc_id","type":"flags.4?int"},{"name":"record_start_date","type":"flags.5?int"},{"name":"schedule_date","type":"flags.7?int"},{"name":"unmuted_video_count","type":"flags.10?int"},{"name":"unmuted_video_limit","type":"int"},{"name":"version","type":"int"}],"type":"GroupCall"},{"id":-659913713,"predicate":"inputGroupCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGroupCall"},{"id":2047704898,"predicate":"messageActionGroupCall","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"duration","type":"flags.0?int"}],"type":"MessageAction"},{"id":1991897370,"predicate":"messageActionInviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-341428482,"predicate":"groupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"left","type":"flags.1?true"},{"name":"can_self_unmute","type":"flags.2?true"},{"name":"just_joined","type":"flags.4?true"},{"name":"versioned","type":"flags.5?true"},{"name":"min","type":"flags.8?true"},{"name":"muted_by_you","type":"flags.9?true"},{"name":"volume_by_admin","type":"flags.10?true"},{"name":"self","type":"flags.12?true"},{"name":"video_joined","type":"flags.15?true"},{"name":"peer","type":"Peer"},{"name":"date","type":"int"},{"name":"active_date","type":"flags.3?int"},{"name":"source","type":"int"},{"name":"volume","type":"flags.7?int"},{"name":"about","type":"flags.11?string"},{"name":"raise_hand_rating","type":"flags.13?long"},{"name":"video","type":"flags.6?GroupCallParticipantVideo"},{"name":"presentation","type":"flags.14?GroupCallParticipantVideo"}],"type":"GroupCallParticipant"},{"id":321954198,"predicate":"updateChat","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":-219423922,"predicate":"updateGroupCallParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"Update"},{"id":-1537295973,"predicate":"updateGroupCall","params":[{"name":"chat_id","type":"int"},{"name":"call","type":"GroupCall"}],"type":"Update"},{"id":-1636664659,"predicate":"phone.groupCall","params":[{"name":"call","type":"GroupCall"},{"name":"participants","type":"Vector"},{"name":"participants_next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.GroupCall"},{"id":-193506890,"predicate":"phone.groupParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"version","type":"int"}],"type":"phone.GroupParticipants"},{"id":813821341,"predicate":"inlineQueryPeerTypeSameBotPM","params":[],"type":"InlineQueryPeerType"},{"id":-2093215828,"predicate":"inlineQueryPeerTypePM","params":[],"type":"InlineQueryPeerType"},{"id":-681130742,"predicate":"inlineQueryPeerTypeChat","params":[],"type":"InlineQueryPeerType"},{"id":1589952067,"predicate":"inlineQueryPeerTypeMegagroup","params":[],"type":"InlineQueryPeerType"},{"id":1664413338,"predicate":"inlineQueryPeerTypeBroadcast","params":[],"type":"InlineQueryPeerType"},{"id":589338437,"predicate":"channelAdminLogEventActionStartGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-610299584,"predicate":"channelAdminLogEventActionDiscardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-115071790,"predicate":"channelAdminLogEventActionParticipantMute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-431740480,"predicate":"channelAdminLogEventActionParticipantUnmute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1456906823,"predicate":"channelAdminLogEventActionToggleGroupCallSetting","params":[{"name":"join_muted","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-1966921727,"predicate":"inputPaymentCredentialsGooglePay","params":[{"name":"payment_token","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":375566091,"predicate":"messages.historyImport","params":[{"name":"id","type":"long"}],"type":"messages.HistoryImport"},{"id":-606432698,"predicate":"sendMessageHistoryImportAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":1578088377,"predicate":"messages.historyImportParsed","params":[{"name":"flags","type":"#"},{"name":"pm","type":"flags.0?true"},{"name":"group","type":"flags.1?true"},{"name":"title","type":"flags.2?string"}],"type":"messages.HistoryImportParsed"},{"id":-170010905,"predicate":"inputReportReasonFake","params":[],"type":"ReportReason"},{"id":-275956116,"predicate":"messages.affectedFoundMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"},{"name":"messages","type":"Vector"}],"type":"messages.AffectedFoundMessages"},{"id":-1441072131,"predicate":"messageActionSetMessagesTTL","params":[{"name":"period","type":"int"}],"type":"MessageAction"},{"id":-1147422299,"predicate":"updatePeerHistoryTTL","params":[{"name":"flags","type":"#"},{"name":"peer","type":"Peer"},{"name":"ttl_period","type":"flags.0?int"}],"type":"Update"},{"id":-206342113,"predicate":"updateChatParticipant","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"actor_id","type":"int"},{"name":"user_id","type":"int"},{"name":"prev_participant","type":"flags.0?ChatParticipant"},{"name":"new_participant","type":"flags.1?ChatParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":2146218476,"predicate":"updateChannelParticipant","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"date","type":"int"},{"name":"actor_id","type":"int"},{"name":"user_id","type":"int"},{"name":"prev_participant","type":"flags.0?ChannelParticipant"},{"name":"new_participant","type":"flags.1?ChannelParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":133777546,"predicate":"updateBotStopped","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"},{"name":"stopped","type":"Bool"},{"name":"qts","type":"int"}],"type":"Update"},{"id":507405952,"predicate":"chatInviteImporter","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatInviteImporter"},{"id":-1111085620,"predicate":"messages.exportedChatInvites","params":[{"name":"count","type":"int"},{"name":"invites","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvites"},{"id":410107472,"predicate":"messages.exportedChatInvite","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":572915951,"predicate":"messages.exportedChatInviteReplaced","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":-2118733814,"predicate":"messages.chatInviteImporters","params":[{"name":"count","type":"int"},{"name":"importers","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatInviteImporters"},{"id":-539872497,"predicate":"chatAdminWithInvites","params":[{"name":"admin_id","type":"int"},{"name":"invites_count","type":"int"},{"name":"revoked_invites_count","type":"int"}],"type":"ChatAdminWithInvites"},{"id":-1231326505,"predicate":"messages.chatAdminsWithInvites","params":[{"name":"admins","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatAdminsWithInvites"},{"id":1557846647,"predicate":"channelAdminLogEventActionParticipantJoinByInvite","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1515256996,"predicate":"channelAdminLogEventActionExportedInviteDelete","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1091179342,"predicate":"channelAdminLogEventActionExportedInviteRevoke","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":-384910503,"predicate":"channelAdminLogEventActionExportedInviteEdit","params":[{"name":"prev_invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1048537159,"predicate":"channelAdminLogEventActionParticipantVolume","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1855199800,"predicate":"channelAdminLogEventActionChangeHistoryTTL","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":-1571952873,"predicate":"messages.checkedHistoryImportPeer","params":[{"name":"confirm_text","type":"string"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-1146808775,"predicate":"inputGroupCallStream","params":[{"name":"call","type":"InputGroupCall"},{"name":"time_ms","type":"long"},{"name":"scale","type":"int"}],"type":"InputFileLocation"},{"id":-1343921601,"predicate":"phone.joinAsPeers","params":[{"name":"peers","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.JoinAsPeers"},{"id":541839704,"predicate":"phone.exportedGroupCallInvite","params":[{"name":"link","type":"string"}],"type":"phone.ExportedGroupCallInvite"},{"id":-672693723,"predicate":"inputBotInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":894081801,"predicate":"botInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1281329567,"predicate":"messageActionGroupCallScheduled","params":[{"name":"call","type":"InputGroupCall"},{"name":"schedule_date","type":"int"}],"type":"MessageAction"},{"id":-592373577,"predicate":"groupCallParticipantVideoSourceGroup","params":[{"name":"semantics","type":"string"},{"name":"sources","type":"Vector"}],"type":"GroupCallParticipantVideoSourceGroup"},{"id":1735736008,"predicate":"groupCallParticipantVideo","params":[{"name":"flags","type":"#"},{"name":"paused","type":"flags.0?true"},{"name":"endpoint","type":"string"},{"name":"source_groups","type":"Vector"},{"name":"audio_source","type":"flags.1?int"}],"type":"GroupCallParticipantVideo"},{"id":192428418,"predicate":"updateGroupCallConnection","params":[{"name":"flags","type":"#"},{"name":"presentation","type":"flags.0?true"},{"name":"params","type":"DataJSON"}],"type":"Update"},{"id":-2046910401,"predicate":"stickers.suggestedShortName","params":[{"name":"short_name","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":795652779,"predicate":"botCommandScopeDefault","params":[],"type":"BotCommandScope"},{"id":1011811544,"predicate":"botCommandScopeUsers","params":[],"type":"BotCommandScope"},{"id":1877059713,"predicate":"botCommandScopeChats","params":[],"type":"BotCommandScope"},{"id":-1180016534,"predicate":"botCommandScopeChatAdmins","params":[],"type":"BotCommandScope"},{"id":-610432643,"predicate":"botCommandScopePeer","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":1071145937,"predicate":"botCommandScopePeerAdmins","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":169026035,"predicate":"botCommandScopePeerUser","params":[{"name":"peer","type":"InputPeer"},{"name":"user_id","type":"InputUser"}],"type":"BotCommandScope"},{"id":-478701471,"predicate":"account.resetPasswordFailedWait","params":[{"name":"retry_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-370148227,"predicate":"account.resetPasswordRequestedWait","params":[{"name":"until_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-383330754,"predicate":"account.resetPasswordOk","params":[],"type":"account.ResetPasswordResult"},{"id":-813823885,"predicate":"updateBotCommands","params":[{"name":"peer","type":"Peer"},{"name":"bot_id","type":"int"},{"name":"commands","type":"Vector"}],"type":"Update"}],"methods":[{"id":-878758099,"method":"invokeAfterMsg","params":[{"name":"msg_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":1036301552,"method":"invokeAfterMsgs","params":[{"name":"msg_ids","type":"Vector"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1502141361,"method":"auth.sendCode","params":[{"name":"phone_number","type":"string"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":-2131827673,"method":"auth.signUp","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"auth.Authorization"},{"id":-1126886015,"method":"auth.signIn","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"auth.Authorization"},{"id":1461180992,"method":"auth.logOut","params":[],"type":"Bool"},{"id":-1616179942,"method":"auth.resetAuthorizations","params":[],"type":"Bool"},{"id":-440401971,"method":"auth.exportAuthorization","params":[{"name":"dc_id","type":"int"}],"type":"auth.ExportedAuthorization"},{"id":-470837741,"method":"auth.importAuthorization","params":[{"name":"id","type":"int"},{"name":"bytes","type":"bytes"}],"type":"auth.Authorization"},{"id":-841733627,"method":"auth.bindTempAuthKey","params":[{"name":"perm_auth_key_id","type":"long"},{"name":"nonce","type":"long"},{"name":"expires_at","type":"int"},{"name":"encrypted_message","type":"bytes"}],"type":"Bool"},{"id":1754754159,"method":"account.registerDevice","params":[{"name":"flags","type":"#"},{"name":"no_muted","type":"flags.0?true"},{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"app_sandbox","type":"Bool"},{"name":"secret","type":"bytes"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":813089983,"method":"account.unregisterDevice","params":[{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":-2067899501,"method":"account.updateNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"},{"name":"settings","type":"InputPeerNotifySettings"}],"type":"Bool"},{"id":313765169,"method":"account.getNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"}],"type":"PeerNotifySettings"},{"id":-612493497,"method":"account.resetNotifySettings","params":[],"type":"Bool"},{"id":2018596725,"method":"account.updateProfile","params":[{"name":"flags","type":"#"},{"name":"first_name","type":"flags.0?string"},{"name":"last_name","type":"flags.1?string"},{"name":"about","type":"flags.2?string"}],"type":"User"},{"id":1713919532,"method":"account.updateStatus","params":[{"name":"offline","type":"Bool"}],"type":"Bool"},{"id":-1430579357,"method":"account.getWallPapers","params":[{"name":"hash","type":"int"}],"type":"account.WallPapers"},{"id":-977650298,"method":"account.reportPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":227648840,"method":"users.getUsers","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-902781519,"method":"users.getFullUser","params":[{"name":"id","type":"InputUser"}],"type":"UserFull"},{"id":749357634,"method":"contacts.getContactIDs","params":[{"name":"hash","type":"int"}],"type":"Vector"},{"id":-995929106,"method":"contacts.getStatuses","params":[],"type":"Vector"},{"id":-1071414113,"method":"contacts.getContacts","params":[{"name":"hash","type":"int"}],"type":"contacts.Contacts"},{"id":746589157,"method":"contacts.importContacts","params":[{"name":"contacts","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":157945344,"method":"contacts.deleteContacts","params":[{"name":"id","type":"Vector"}],"type":"Updates"},{"id":269745566,"method":"contacts.deleteByPhones","params":[{"name":"phones","type":"Vector"}],"type":"Bool"},{"id":1758204945,"method":"contacts.block","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-1096393392,"method":"contacts.unblock","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-176409329,"method":"contacts.getBlocked","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"contacts.Blocked"},{"id":1673946374,"method":"messages.getMessages","params":[{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1594999949,"method":"messages.getDialogs","params":[{"name":"flags","type":"#"},{"name":"exclude_pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"offset_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Dialogs"},{"id":-591691168,"method":"messages.getHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":204812012,"method":"messages.search","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"q","type":"string"},{"name":"from_id","type":"flags.0?InputPeer"},{"name":"top_msg_id","type":"flags.1?int"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":238054714,"method":"messages.readHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedMessages"},{"id":469850889,"method":"messages.deleteHistory","params":[{"name":"flags","type":"#"},{"name":"just_clear","type":"flags.0?true"},{"name":"revoke","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedHistory"},{"id":-443640366,"method":"messages.deleteMessages","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":94983360,"method":"messages.receivedMessages","params":[{"name":"max_id","type":"int"}],"type":"Vector"},{"id":1486110434,"method":"messages.setTyping","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"action","type":"SendMessageAction"}],"type":"Bool"},{"id":1376532592,"method":"messages.sendMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":881978281,"method":"messages.sendMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"media","type":"InputMedia"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-637606386,"method":"messages.forwardMessages","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"with_my_score","type":"flags.8?true"},{"name":"from_peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"random_id","type":"Vector"},{"name":"to_peer","type":"InputPeer"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-820669733,"method":"messages.reportSpam","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":913498268,"method":"messages.getPeerSettings","params":[{"name":"peer","type":"InputPeer"}],"type":"PeerSettings"},{"id":-1991005362,"method":"messages.report","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1013621127,"method":"messages.getChats","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":998448230,"method":"messages.getFullChat","params":[{"name":"chat_id","type":"int"}],"type":"messages.ChatFull"},{"id":-599447467,"method":"messages.editChatTitle","params":[{"name":"chat_id","type":"int"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-900957736,"method":"messages.editChatPhoto","params":[{"name":"chat_id","type":"int"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":-106911223,"method":"messages.addChatUser","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"fwd_limit","type":"int"}],"type":"Updates"},{"id":-986430054,"method":"messages.deleteChatUser","params":[{"name":"flags","type":"#"},{"name":"revoke_history","type":"flags.0?true"},{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"Updates"},{"id":164303470,"method":"messages.createChat","params":[{"name":"users","type":"Vector"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-304838614,"method":"updates.getState","params":[],"type":"updates.State"},{"id":630429265,"method":"updates.getDifference","params":[{"name":"flags","type":"#"},{"name":"pts","type":"int"},{"name":"pts_total_limit","type":"flags.0?int"},{"name":"date","type":"int"},{"name":"qts","type":"int"}],"type":"updates.Difference"},{"id":1926525996,"method":"photos.updateProfilePhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"photos.Photo"},{"id":-1980559511,"method":"photos.uploadProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"photos.Photo"},{"id":-2016444625,"method":"photos.deletePhotos","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-1291540959,"method":"upload.saveFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":-1319462148,"method":"upload.getFile","params":[{"name":"flags","type":"#"},{"name":"precise","type":"flags.0?true"},{"name":"cdn_supported","type":"flags.1?true"},{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.File"},{"id":-990308245,"method":"help.getConfig","params":[],"type":"Config"},{"id":531836966,"method":"help.getNearestDc","params":[],"type":"NearestDc"},{"id":1378703997,"method":"help.getAppUpdate","params":[{"name":"source","type":"string"}],"type":"help.AppUpdate"},{"id":1295590211,"method":"help.getInviteText","params":[],"type":"help.InviteText"},{"id":-1848823128,"method":"photos.getUserPhotos","params":[{"name":"user_id","type":"InputUser"},{"name":"offset","type":"int"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"photos.Photos"},{"id":651135312,"method":"messages.getDhConfig","params":[{"name":"version","type":"int"},{"name":"random_length","type":"int"}],"type":"messages.DhConfig"},{"id":-162681021,"method":"messages.requestEncryption","params":[{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1035731989,"method":"messages.acceptEncryption","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"g_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":-208425312,"method":"messages.discardEncryption","params":[{"name":"flags","type":"#"},{"name":"delete_history","type":"flags.0?true"},{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":2031374829,"method":"messages.setEncryptedTyping","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"typing","type":"Bool"}],"type":"Bool"},{"id":2135648522,"method":"messages.readEncryptedHistory","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"max_date","type":"int"}],"type":"Bool"},{"id":1157265941,"method":"messages.sendEncrypted","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1431914525,"method":"messages.sendEncryptedFile","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"},{"name":"file","type":"InputEncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":852769188,"method":"messages.sendEncryptedService","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1436924774,"method":"messages.receivedQueue","params":[{"name":"max_qts","type":"int"}],"type":"Vector"},{"id":1259113487,"method":"messages.reportEncryptedSpam","params":[{"name":"peer","type":"InputEncryptedChat"}],"type":"Bool"},{"id":-562337987,"method":"upload.saveBigFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"file_total_parts","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":-1043505495,"method":"initConnection","params":[{"name":"flags","type":"#"},{"name":"api_id","type":"int"},{"name":"device_model","type":"string"},{"name":"system_version","type":"string"},{"name":"app_version","type":"string"},{"name":"system_lang_code","type":"string"},{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"proxy","type":"flags.0?InputClientProxy"},{"name":"params","type":"flags.1?JSONValue"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1663104819,"method":"help.getSupport","params":[],"type":"help.Support"},{"id":916930423,"method":"messages.readMessageContents","params":[{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":655677548,"method":"account.checkUsername","params":[{"name":"username","type":"string"}],"type":"Bool"},{"id":1040964988,"method":"account.updateUsername","params":[{"name":"username","type":"string"}],"type":"User"},{"id":301470424,"method":"contacts.search","params":[{"name":"q","type":"string"},{"name":"limit","type":"int"}],"type":"contacts.Found"},{"id":-623130288,"method":"account.getPrivacy","params":[{"name":"key","type":"InputPrivacyKey"}],"type":"account.PrivacyRules"},{"id":-906486552,"method":"account.setPrivacy","params":[{"name":"key","type":"InputPrivacyKey"},{"name":"rules","type":"Vector"}],"type":"account.PrivacyRules"},{"id":1099779595,"method":"account.deleteAccount","params":[{"name":"reason","type":"string"}],"type":"Bool"},{"id":150761757,"method":"account.getAccountTTL","params":[],"type":"AccountDaysTTL"},{"id":608323678,"method":"account.setAccountTTL","params":[{"name":"ttl","type":"AccountDaysTTL"}],"type":"Bool"},{"id":-627372787,"method":"invokeWithLayer","params":[{"name":"layer","type":"int"},{"name":"query","type":"!X"}],"type":"X"},{"id":-113456221,"method":"contacts.resolveUsername","params":[{"name":"username","type":"string"}],"type":"contacts.ResolvedPeer"},{"id":-2108208411,"method":"account.sendChangePhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1891839707,"method":"account.changePhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"User"},{"id":71126828,"method":"messages.getStickers","params":[{"name":"emoticon","type":"string"},{"name":"hash","type":"int"}],"type":"messages.Stickers"},{"id":479598769,"method":"messages.getAllStickers","params":[{"name":"hash","type":"int"}],"type":"messages.AllStickers"},{"id":954152242,"method":"account.updateDeviceLocked","params":[{"name":"period","type":"int"}],"type":"Bool"},{"id":1738800940,"method":"auth.importBotAuthorization","params":[{"name":"flags","type":"int"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"bot_auth_token","type":"string"}],"type":"auth.Authorization"},{"id":-1956073268,"method":"messages.getWebPagePreview","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"MessageMedia"},{"id":-484392616,"method":"account.getAuthorizations","params":[],"type":"account.Authorizations"},{"id":-545786948,"method":"account.resetAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1418342645,"method":"account.getPassword","params":[],"type":"account.Password"},{"id":-1663767815,"method":"account.getPasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"account.PasswordSettings"},{"id":-1516564433,"method":"account.updatePasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"new_settings","type":"account.PasswordInputSettings"}],"type":"Bool"},{"id":-779399914,"method":"auth.checkPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"auth.Authorization"},{"id":-661144474,"method":"auth.requestPasswordRecovery","params":[],"type":"auth.PasswordRecovery"},{"id":923364464,"method":"auth.recoverPassword","params":[{"name":"flags","type":"#"},{"name":"code","type":"string"},{"name":"new_settings","type":"flags.0?account.PasswordInputSettings"}],"type":"auth.Authorization"},{"id":-1080796745,"method":"invokeWithoutUpdates","params":[{"name":"query","type":"!X"}],"type":"X"},{"id":347716823,"method":"messages.exportChatInvite","params":[{"name":"flags","type":"#"},{"name":"legacy_revoke_permanent","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"ExportedChatInvite"},{"id":1051570619,"method":"messages.checkChatInvite","params":[{"name":"hash","type":"string"}],"type":"ChatInvite"},{"id":1817183516,"method":"messages.importChatInvite","params":[{"name":"hash","type":"string"}],"type":"Updates"},{"id":639215886,"method":"messages.getStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"messages.StickerSet"},{"id":-946871200,"method":"messages.installStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"archived","type":"Bool"}],"type":"messages.StickerSetInstallResult"},{"id":-110209570,"method":"messages.uninstallStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":-421563528,"method":"messages.startBot","params":[{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"long"},{"name":"start_param","type":"string"}],"type":"Updates"},{"id":-1877938321,"method":"help.getAppChangelog","params":[{"name":"prev_app_version","type":"string"}],"type":"Updates"},{"id":1468322785,"method":"messages.getMessagesViews","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"increment","type":"Bool"}],"type":"messages.MessageViews"},{"id":-871347913,"method":"channels.readHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":-2067661490,"method":"channels.deleteMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":-787622117,"method":"channels.deleteUserHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"}],"type":"messages.AffectedHistory"},{"id":-32999408,"method":"channels.reportSpam","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1383294429,"method":"channels.getMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":306054633,"method":"channels.getParticipants","params":[{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelParticipantsFilter"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"channels.ChannelParticipants"},{"id":-1599378234,"method":"channels.getParticipant","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"}],"type":"channels.ChannelParticipant"},{"id":176122811,"method":"channels.getChannels","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":141781513,"method":"channels.getFullChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.ChatFull"},{"id":1029681423,"method":"channels.createChannel","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.0?true"},{"name":"megagroup","type":"flags.1?true"},{"name":"for_import","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"about","type":"string"},{"name":"geo_point","type":"flags.2?InputGeoPoint"},{"name":"address","type":"flags.2?string"}],"type":"Updates"},{"id":-751007486,"method":"channels.editAdmin","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"string"}],"type":"Updates"},{"id":1450044624,"method":"channels.editTitle","params":[{"name":"channel","type":"InputChannel"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-248621111,"method":"channels.editPhoto","params":[{"name":"channel","type":"InputChannel"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":283557164,"method":"channels.checkUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":890549214,"method":"channels.updateUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":615851205,"method":"channels.joinChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-130635115,"method":"channels.leaveChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":429865580,"method":"channels.inviteToChannel","params":[{"name":"channel","type":"InputChannel"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":-1072619549,"method":"channels.deleteChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":51854712,"method":"updates.getChannelDifference","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelMessagesFilter"},{"name":"pts","type":"int"},{"name":"limit","type":"int"}],"type":"updates.ChannelDifference"},{"id":-1444503762,"method":"messages.editChatAdmin","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"is_admin","type":"Bool"}],"type":"Bool"},{"id":363051235,"method":"messages.migrateChat","params":[{"name":"chat_id","type":"int"}],"type":"Updates"},{"id":1271290010,"method":"messages.searchGlobal","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"q","type":"string"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":2016638777,"method":"messages.reorderStickerSets","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":864953444,"method":"messages.getDocumentByHash","params":[{"name":"sha256","type":"bytes"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":-2084618926,"method":"messages.getSavedGifs","params":[{"name":"hash","type":"int"}],"type":"messages.SavedGifs"},{"id":846868683,"method":"messages.saveGif","params":[{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":1364105629,"method":"messages.getInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"geo_point","type":"flags.0?InputGeoPoint"},{"name":"query","type":"string"},{"name":"offset","type":"string"}],"type":"messages.BotResults"},{"id":-346119674,"method":"messages.setInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"private","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"next_offset","type":"flags.2?string"},{"name":"switch_pm","type":"flags.3?InlineBotSwitchPM"}],"type":"Bool"},{"id":570955184,"method":"messages.sendInlineBotResult","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"hide_via","type":"flags.11?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"random_id","type":"long"},{"name":"query_id","type":"long"},{"name":"id","type":"string"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-432034325,"method":"channels.exportMessageLink","params":[{"name":"flags","type":"#"},{"name":"grouped","type":"flags.0?true"},{"name":"thread","type":"flags.1?true"},{"name":"channel","type":"InputChannel"},{"name":"id","type":"int"}],"type":"ExportedMessageLink"},{"id":527021574,"method":"channels.toggleSignatures","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":1056025023,"method":"auth.resendCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"auth.SentCode"},{"id":520357240,"method":"auth.cancelCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"Bool"},{"id":-39416522,"method":"messages.getMessageEditData","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"messages.MessageEditData"},{"id":1224152952,"method":"messages.editMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.15?int"}],"type":"Updates"},{"id":-2091549254,"method":"messages.editInlineBotMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":-1824339449,"method":"messages.getBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"game","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"data","type":"flags.0?bytes"},{"name":"password","type":"flags.2?InputCheckPasswordSRP"}],"type":"messages.BotCallbackAnswer"},{"id":-712043766,"method":"messages.setBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"Bool"},{"id":-728224331,"method":"contacts.getTopPeers","params":[{"name":"flags","type":"#"},{"name":"correspondents","type":"flags.0?true"},{"name":"bots_pm","type":"flags.1?true"},{"name":"bots_inline","type":"flags.2?true"},{"name":"phone_calls","type":"flags.3?true"},{"name":"forward_users","type":"flags.4?true"},{"name":"forward_chats","type":"flags.5?true"},{"name":"groups","type":"flags.10?true"},{"name":"channels","type":"flags.15?true"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"contacts.TopPeers"},{"id":451113900,"method":"contacts.resetTopPeerRating","params":[{"name":"category","type":"TopPeerCategory"},{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-462373635,"method":"messages.getPeerDialogs","params":[{"name":"peers","type":"Vector"}],"type":"messages.PeerDialogs"},{"id":-1137057461,"method":"messages.saveDraft","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"peer","type":"InputPeer"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":1782549861,"method":"messages.getAllDrafts","params":[],"type":"Updates"},{"id":766298703,"method":"messages.getFeaturedStickers","params":[{"name":"hash","type":"int"}],"type":"messages.FeaturedStickers"},{"id":1527873830,"method":"messages.readFeaturedStickers","params":[{"name":"id","type":"Vector"}],"type":"Bool"},{"id":1587647177,"method":"messages.getRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"hash","type":"int"}],"type":"messages.RecentStickers"},{"id":958863608,"method":"messages.saveRecentSticker","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":-1986437075,"method":"messages.clearRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"}],"type":"Bool"},{"id":1475442322,"method":"messages.getArchivedStickers","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"offset_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.ArchivedStickers"},{"id":457157256,"method":"account.sendConfirmPhoneCode","params":[{"name":"hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1596029123,"method":"account.confirmPhone","params":[{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":-122669393,"method":"channels.getAdminedPublicChannels","params":[{"name":"flags","type":"#"},{"name":"by_location","type":"flags.0?true"},{"name":"check_limit","type":"flags.1?true"}],"type":"messages.Chats"},{"id":1706608543,"method":"messages.getMaskStickers","params":[{"name":"hash","type":"int"}],"type":"messages.AllStickers"},{"id":-866424884,"method":"messages.getAttachedStickers","params":[{"name":"media","type":"InputStickeredMedia"}],"type":"Vector"},{"id":-1907842680,"method":"auth.dropTempAuthKeys","params":[{"name":"except_auth_keys","type":"Vector"}],"type":"Bool"},{"id":-1896289088,"method":"messages.setGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Updates"},{"id":363700068,"method":"messages.setInlineGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Bool"},{"id":-400399203,"method":"messages.getGameHighScores","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":258170395,"method":"messages.getInlineGameHighScores","params":[{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":218777796,"method":"messages.getCommonChats","params":[{"name":"user_id","type":"InputUser"},{"name":"max_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Chats"},{"id":-341307408,"method":"messages.getAllChats","params":[{"name":"except_ids","type":"Vector"}],"type":"messages.Chats"},{"id":-333262899,"method":"help.setBotUpdatesStatus","params":[{"name":"pending_updates_count","type":"int"},{"name":"message","type":"string"}],"type":"Bool"},{"id":852135825,"method":"messages.getWebPage","params":[{"name":"url","type":"string"},{"name":"hash","type":"int"}],"type":"WebPage"},{"id":-1489903017,"method":"messages.toggleDialogPin","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":991616823,"method":"messages.reorderPinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"folder_id","type":"int"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":-692498958,"method":"messages.getPinnedDialogs","params":[{"name":"folder_id","type":"int"}],"type":"messages.PeerDialogs"},{"id":-1440257555,"method":"bots.sendCustomRequest","params":[{"name":"custom_method","type":"string"},{"name":"params","type":"DataJSON"}],"type":"DataJSON"},{"id":-434028723,"method":"bots.answerWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"}],"type":"Bool"},{"id":619086221,"method":"upload.getWebFile","params":[{"name":"location","type":"InputWebFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.WebFile"},{"id":-1976353651,"method":"payments.getPaymentForm","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"theme_params","type":"flags.0?DataJSON"}],"type":"payments.PaymentForm"},{"id":611897804,"method":"payments.getPaymentReceipt","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"payments.PaymentReceipt"},{"id":-619695760,"method":"payments.validateRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"info","type":"PaymentRequestedInfo"}],"type":"payments.ValidatedRequestedInfo"},{"id":818134173,"method":"payments.sendPaymentForm","params":[{"name":"flags","type":"#"},{"name":"form_id","type":"long"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"requested_info_id","type":"flags.0?string"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"credentials","type":"InputPaymentCredentials"},{"name":"tip_amount","type":"flags.2?long"}],"type":"payments.PaymentResult"},{"id":1151208273,"method":"account.getTmpPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"period","type":"int"}],"type":"account.TmpPassword"},{"id":578650699,"method":"payments.getSavedInfo","params":[],"type":"payments.SavedInfo"},{"id":-667062079,"method":"payments.clearSavedInfo","params":[{"name":"flags","type":"#"},{"name":"credentials","type":"flags.0?true"},{"name":"info","type":"flags.1?true"}],"type":"Bool"},{"id":-436833542,"method":"messages.setBotShippingResults","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"Bool"},{"id":163765653,"method":"messages.setBotPrecheckoutResults","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"}],"type":"Bool"},{"id":-1876841625,"method":"stickers.createStickerSet","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"animated","type":"flags.1?true"},{"name":"user_id","type":"InputUser"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumb","type":"flags.2?InputDocument"},{"name":"stickers","type":"Vector"},{"name":"software","type":"flags.3?string"}],"type":"messages.StickerSet"},{"id":-143257775,"method":"stickers.removeStickerFromSet","params":[{"name":"sticker","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":-4795190,"method":"stickers.changeStickerPosition","params":[{"name":"sticker","type":"InputDocument"},{"name":"position","type":"int"}],"type":"messages.StickerSet"},{"id":-2041315650,"method":"stickers.addStickerToSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"sticker","type":"InputStickerSetItem"}],"type":"messages.StickerSet"},{"id":1369162417,"method":"messages.uploadMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":1430593449,"method":"phone.getCallConfig","params":[],"type":"DataJSON"},{"id":1124046573,"method":"phone.requestCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":1003664544,"method":"phone.acceptCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":788404002,"method":"phone.confirmCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_a","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":399855457,"method":"phone.receivedCall","params":[{"name":"peer","type":"InputPhoneCall"}],"type":"Bool"},{"id":-1295269440,"method":"phone.discardCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"duration","type":"int"},{"name":"reason","type":"PhoneCallDiscardReason"},{"name":"connection_id","type":"long"}],"type":"Updates"},{"id":1508562471,"method":"phone.setCallRating","params":[{"name":"flags","type":"#"},{"name":"user_initiative","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"rating","type":"int"},{"name":"comment","type":"string"}],"type":"Updates"},{"id":662363518,"method":"phone.saveCallDebug","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"debug","type":"DataJSON"}],"type":"Bool"},{"id":536919235,"method":"upload.getCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.CdnFile"},{"id":-1691921240,"method":"upload.reuploadCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"request_token","type":"bytes"}],"type":"Vector"},{"id":1375900482,"method":"help.getCdnConfig","params":[],"type":"CdnConfig"},{"id":-219008246,"method":"langpack.getLangPack","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackDifference"},{"id":-269862909,"method":"langpack.getStrings","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"keys","type":"Vector"}],"type":"Vector"},{"id":-845657435,"method":"langpack.getDifference","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"LangPackDifference"},{"id":1120311183,"method":"langpack.getLanguages","params":[{"name":"lang_pack","type":"string"}],"type":"Vector"},{"id":-1763259007,"method":"channels.editBanned","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":870184064,"method":"channels.getAdminLog","params":[{"name":"flags","type":"#"},{"name":"channel","type":"InputChannel"},{"name":"q","type":"string"},{"name":"events_filter","type":"flags.0?ChannelAdminLogEventsFilter"},{"name":"admins","type":"flags.1?Vector"},{"name":"max_id","type":"long"},{"name":"min_id","type":"long"},{"name":"limit","type":"int"}],"type":"channels.AdminLogResults"},{"id":1302676017,"method":"upload.getCdnFileHashes","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":-914493408,"method":"messages.sendScreenshotNotification","params":[{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"int"},{"name":"random_id","type":"long"}],"type":"Updates"},{"id":-359881479,"method":"channels.setStickers","params":[{"name":"channel","type":"InputChannel"},{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":567151374,"method":"messages.getFavedStickers","params":[{"name":"hash","type":"int"}],"type":"messages.FavedStickers"},{"id":-1174420133,"method":"messages.faveSticker","params":[{"name":"id","type":"InputDocument"},{"name":"unfave","type":"Bool"}],"type":"Bool"},{"id":-357180360,"method":"channels.readMessageContents","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-2020263951,"method":"contacts.resetSaved","params":[],"type":"Bool"},{"id":1180140658,"method":"messages.getUnreadMentions","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"}],"type":"messages.Messages"},{"id":-1355375294,"method":"channels.deleteHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":1036054804,"method":"help.getRecentMeUrls","params":[{"name":"referer","type":"string"}],"type":"help.RecentMeUrls"},{"id":-356796084,"method":"channels.togglePreHistoryHidden","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":251759059,"method":"messages.readMentions","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":-1144759543,"method":"messages.getRecentLocations","params":[{"name":"peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":-872345397,"method":"messages.sendMultiMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"multi_media","type":"Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":1347929239,"method":"messages.uploadEncryptedFile","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"file","type":"InputEncryptedFile"}],"type":"EncryptedFile"},{"id":405695855,"method":"account.getWebAuthorizations","params":[],"type":"account.WebAuthorizations"},{"id":755087855,"method":"account.resetWebAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1747789204,"method":"account.resetWebAuthorizations","params":[],"type":"Bool"},{"id":-1028140917,"method":"messages.searchStickerSets","params":[{"name":"flags","type":"#"},{"name":"exclude_featured","type":"flags.0?true"},{"name":"q","type":"string"},{"name":"hash","type":"int"}],"type":"messages.FoundStickerSets"},{"id":-956147407,"method":"upload.getFileHashes","params":[{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":749019089,"method":"help.getTermsOfServiceUpdate","params":[],"type":"help.TermsOfServiceUpdate"},{"id":-294455398,"method":"help.acceptTermsOfService","params":[{"name":"id","type":"DataJSON"}],"type":"Bool"},{"id":-1299661699,"method":"account.getAllSecureValues","params":[],"type":"Vector"},{"id":1936088002,"method":"account.getSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Vector"},{"id":-1986010339,"method":"account.saveSecureValue","params":[{"name":"value","type":"InputSecureValue"},{"name":"secure_secret_id","type":"long"}],"type":"SecureValue"},{"id":-1199522741,"method":"account.deleteSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Bool"},{"id":-1865902923,"method":"users.setSecureValueErrors","params":[{"name":"id","type":"InputUser"},{"name":"errors","type":"Vector"}],"type":"Bool"},{"id":-1200903967,"method":"account.getAuthorizationForm","params":[{"name":"bot_id","type":"int"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"}],"type":"account.AuthorizationForm"},{"id":-419267436,"method":"account.acceptAuthorization","params":[{"name":"bot_id","type":"int"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"},{"name":"value_hashes","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"Bool"},{"id":-1516022023,"method":"account.sendVerifyPhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1305716726,"method":"account.verifyPhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1880182943,"method":"account.sendVerifyEmailCode","params":[{"name":"email","type":"string"}],"type":"account.SentEmailCode"},{"id":-323339813,"method":"account.verifyEmail","params":[{"name":"email","type":"string"},{"name":"code","type":"string"}],"type":"Bool"},{"id":1072547679,"method":"help.getDeepLinkInfo","params":[{"name":"path","type":"string"}],"type":"help.DeepLinkInfo"},{"id":-2098076769,"method":"contacts.getSaved","params":[],"type":"Vector"},{"id":-2092831552,"method":"channels.getLeftChannels","params":[{"name":"offset","type":"int"}],"type":"messages.Chats"},{"id":-262453244,"method":"account.initTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"message_users","type":"flags.1?true"},{"name":"message_chats","type":"flags.2?true"},{"name":"message_megagroups","type":"flags.3?true"},{"name":"message_channels","type":"flags.4?true"},{"name":"files","type":"flags.5?true"},{"name":"file_max_size","type":"flags.5?int"}],"type":"account.Takeout"},{"id":489050862,"method":"account.finishTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.0?true"}],"type":"Bool"},{"id":486505992,"method":"messages.getSplitRanges","params":[],"type":"Vector"},{"id":911373810,"method":"invokeWithMessagesRange","params":[{"name":"range","type":"MessageRange"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1398145746,"method":"invokeWithTakeout","params":[{"name":"takeout_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1031349873,"method":"messages.markDialogUnread","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":585256482,"method":"messages.getDialogUnreadMarks","params":[],"type":"Vector"},{"id":-2062238246,"method":"contacts.toggleTopPeers","params":[{"name":"enabled","type":"Bool"}],"type":"Bool"},{"id":2119757468,"method":"messages.clearAllDrafts","params":[],"type":"Bool"},{"id":-1735311088,"method":"help.getAppConfig","params":[],"type":"JSONValue"},{"id":1862465352,"method":"help.saveAppLog","params":[{"name":"events","type":"Vector"}],"type":"Bool"},{"id":-966677240,"method":"help.getPassportConfig","params":[{"name":"hash","type":"int"}],"type":"help.PassportConfig"},{"id":1784243458,"method":"langpack.getLanguage","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackLanguage"},{"id":-760547348,"method":"messages.updatePinnedMessage","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"unpin","type":"flags.1?true"},{"name":"pm_oneside","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"Updates"},{"id":-1881204448,"method":"account.confirmPasswordEmail","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":2055154197,"method":"account.resendPasswordEmail","params":[],"type":"Bool"},{"id":-1043606090,"method":"account.cancelPasswordEmail","params":[],"type":"Bool"},{"id":-748624084,"method":"help.getSupportName","params":[],"type":"help.SupportName"},{"id":59377875,"method":"help.getUserInfo","params":[{"name":"user_id","type":"InputUser"}],"type":"help.UserInfo"},{"id":1723407216,"method":"help.editUserInfo","params":[{"name":"user_id","type":"InputUser"},{"name":"message","type":"string"},{"name":"entities","type":"Vector"}],"type":"help.UserInfo"},{"id":-1626880216,"method":"account.getContactSignUpNotification","params":[],"type":"Bool"},{"id":-806076575,"method":"account.setContactSignUpNotification","params":[{"name":"silent","type":"Bool"}],"type":"Bool"},{"id":1398240377,"method":"account.getNotifyExceptions","params":[{"name":"flags","type":"#"},{"name":"compare_sound","type":"flags.1?true"},{"name":"peer","type":"flags.0?InputNotifyPeer"}],"type":"Updates"},{"id":283795844,"method":"messages.sendVote","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"options","type":"Vector"}],"type":"Updates"},{"id":1941660731,"method":"messages.getPollResults","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1848369232,"method":"messages.getOnlines","params":[{"name":"peer","type":"InputPeer"}],"type":"ChatOnlines"},{"id":-2127811866,"method":"messages.getStatsURL","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"params","type":"string"}],"type":"StatsURL"},{"id":-554301545,"method":"messages.editChatAbout","params":[{"name":"peer","type":"InputPeer"},{"name":"about","type":"string"}],"type":"Bool"},{"id":-1517917375,"method":"messages.editChatDefaultBannedRights","params":[{"name":"peer","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":-57811990,"method":"account.getWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"}],"type":"WallPaper"},{"id":-578472351,"method":"account.uploadWallPaper","params":[{"name":"file","type":"InputFile"},{"name":"mime_type","type":"string"},{"name":"settings","type":"WallPaperSettings"}],"type":"WallPaper"},{"id":1817860919,"method":"account.saveWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"unsave","type":"Bool"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-18000023,"method":"account.installWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-1153722364,"method":"account.resetWallPapers","params":[],"type":"Bool"},{"id":1457130303,"method":"account.getAutoDownloadSettings","params":[],"type":"account.AutoDownloadSettings"},{"id":1995661875,"method":"account.saveAutoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"low","type":"flags.0?true"},{"name":"high","type":"flags.1?true"},{"name":"settings","type":"AutoDownloadSettings"}],"type":"Bool"},{"id":899735650,"method":"messages.getEmojiKeywords","params":[{"name":"lang_code","type":"string"}],"type":"EmojiKeywordsDifference"},{"id":352892591,"method":"messages.getEmojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"EmojiKeywordsDifference"},{"id":1318675378,"method":"messages.getEmojiKeywordsLanguages","params":[{"name":"lang_codes","type":"Vector"}],"type":"Vector"},{"id":-709817306,"method":"messages.getEmojiURL","params":[{"name":"lang_code","type":"string"}],"type":"EmojiURL"},{"id":1749536939,"method":"folders.editPeerFolders","params":[{"name":"folder_peers","type":"Vector"}],"type":"Updates"},{"id":472471681,"method":"folders.deleteFolder","params":[{"name":"folder_id","type":"int"}],"type":"Updates"},{"id":1932455680,"method":"messages.getSearchCounters","params":[{"name":"peer","type":"InputPeer"},{"name":"filters","type":"Vector"}],"type":"Vector"},{"id":-170208392,"method":"channels.getGroupsForDiscussion","params":[],"type":"messages.Chats"},{"id":1079520178,"method":"channels.setDiscussionGroup","params":[{"name":"broadcast","type":"InputChannel"},{"name":"group","type":"InputChannel"}],"type":"Bool"},{"id":428848198,"method":"messages.requestUrlAuth","params":[{"name":"flags","type":"#"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":-1322487515,"method":"messages.acceptUrlAuth","params":[{"name":"flags","type":"#"},{"name":"write_allowed","type":"flags.0?true"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":1336717624,"method":"messages.hidePeerSettingsBar","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-386636848,"method":"contacts.addContact","params":[{"name":"flags","type":"#"},{"name":"add_phone_privacy_exception","type":"flags.0?true"},{"name":"id","type":"InputUser"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"phone","type":"string"}],"type":"Updates"},{"id":-130964977,"method":"contacts.acceptContact","params":[{"name":"id","type":"InputUser"}],"type":"Updates"},{"id":-1892102881,"method":"channels.editCreator","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"password","type":"InputCheckPasswordSRP"}],"type":"Updates"},{"id":-750207932,"method":"contacts.getLocated","params":[{"name":"flags","type":"#"},{"name":"background","type":"flags.1?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"self_expires","type":"flags.0?int"}],"type":"Updates"},{"id":1491484525,"method":"channels.editLocation","params":[{"name":"channel","type":"InputChannel"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"address","type":"string"}],"type":"Bool"},{"id":-304832784,"method":"channels.toggleSlowMode","params":[{"name":"channel","type":"InputChannel"},{"name":"seconds","type":"int"}],"type":"Updates"},{"id":-490575781,"method":"messages.getScheduledHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":-1111817116,"method":"messages.getScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1120369398,"method":"messages.sendScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":1504586518,"method":"messages.deleteScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":473805619,"method":"account.uploadTheme","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.0?InputFile"},{"name":"file_name","type":"string"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":-2077048289,"method":"account.createTheme","params":[{"name":"flags","type":"#"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":1555261397,"method":"account.updateTheme","params":[{"name":"flags","type":"#"},{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"slug","type":"flags.0?string"},{"name":"title","type":"flags.1?string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":-229175188,"method":"account.saveTheme","params":[{"name":"theme","type":"InputTheme"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":2061776695,"method":"account.installTheme","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"format","type":"flags.1?string"},{"name":"theme","type":"flags.1?InputTheme"}],"type":"Bool"},{"id":-1919060949,"method":"account.getTheme","params":[{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"document_id","type":"long"}],"type":"Theme"},{"id":676939512,"method":"account.getThemes","params":[{"name":"format","type":"string"},{"name":"hash","type":"int"}],"type":"account.Themes"},{"id":-1313598185,"method":"auth.exportLoginToken","params":[{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"except_ids","type":"Vector"}],"type":"auth.LoginToken"},{"id":-1783866140,"method":"auth.importLoginToken","params":[{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":-392909491,"method":"auth.acceptLoginToken","params":[{"name":"token","type":"bytes"}],"type":"Authorization"},{"id":-1250643605,"method":"account.setContentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"}],"type":"Bool"},{"id":-1952756306,"method":"account.getContentSettings","params":[],"type":"account.ContentSettings"},{"id":300429806,"method":"channels.getInactiveChannels","params":[],"type":"messages.InactiveChats"},{"id":1705865692,"method":"account.getMultiWallPapers","params":[{"name":"wallpapers","type":"Vector"}],"type":"Vector"},{"id":-1200736242,"method":"messages.getPollVotes","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"option","type":"flags.0?bytes"},{"name":"offset","type":"flags.1?string"},{"name":"limit","type":"int"}],"type":"messages.VotesList"},{"id":-1257951254,"method":"messages.toggleStickerSets","params":[{"name":"flags","type":"#"},{"name":"uninstall","type":"flags.0?true"},{"name":"archive","type":"flags.1?true"},{"name":"unarchive","type":"flags.2?true"},{"name":"stickersets","type":"Vector"}],"type":"Bool"},{"id":779736953,"method":"payments.getBankCardData","params":[{"name":"number","type":"string"}],"type":"payments.BankCardData"},{"id":-241247891,"method":"messages.getDialogFilters","params":[],"type":"Vector"},{"id":-1566780372,"method":"messages.getSuggestedDialogFilters","params":[],"type":"Vector"},{"id":450142282,"method":"messages.updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Bool"},{"id":-983318044,"method":"messages.updateDialogFiltersOrder","params":[{"name":"order","type":"Vector"}],"type":"Bool"},{"id":-1421720550,"method":"stats.getBroadcastStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.BroadcastStats"},{"id":1646092192,"method":"stats.loadAsyncGraph","params":[{"name":"flags","type":"#"},{"name":"token","type":"string"},{"name":"x","type":"flags.0?long"}],"type":"StatsGraph"},{"id":-1707717072,"method":"stickers.setStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":85399130,"method":"bots.setBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"},{"name":"commands","type":"Vector"}],"type":"Bool"},{"id":1608974939,"method":"messages.getOldFeaturedStickers","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.FeaturedStickers"},{"id":-1063816159,"method":"help.getPromoData","params":[],"type":"help.PromoData"},{"id":505748629,"method":"help.hidePromoData","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-8744061,"method":"phone.sendSignalingData","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"data","type":"bytes"}],"type":"Bool"},{"id":-589330937,"method":"stats.getMegagroupStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.MegagroupStats"},{"id":-349483786,"method":"account.getGlobalPrivacySettings","params":[],"type":"GlobalPrivacySettings"},{"id":517647042,"method":"account.setGlobalPrivacySettings","params":[{"name":"settings","type":"GlobalPrivacySettings"}],"type":"GlobalPrivacySettings"},{"id":-183649631,"method":"help.dismissSuggestion","params":[{"name":"peer","type":"InputPeer"},{"name":"suggestion","type":"string"}],"type":"Bool"},{"id":1935116200,"method":"help.getCountriesList","params":[{"name":"lang_code","type":"string"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":615875002,"method":"messages.getReplies","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":1147761405,"method":"messages.getDiscussionMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"messages.DiscussionMessage"},{"id":-147740172,"method":"messages.readDiscussion","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Bool"},{"id":698914348,"method":"contacts.blockFromReplies","params":[{"name":"flags","type":"#"},{"name":"delete_message","type":"flags.0?true"},{"name":"delete_history","type":"flags.1?true"},{"name":"report_spam","type":"flags.2?true"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1445996571,"method":"stats.getMessagePublicForwards","params":[{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":-1226791947,"method":"stats.getMessageStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"}],"type":"stats.MessageStats"},{"id":-265962357,"method":"messages.unpinAllMessages","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1221445336,"method":"phone.createGroupCall","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"schedule_date","type":"flags.1?int"}],"type":"Updates"},{"id":-1322057861,"method":"phone.joinGroupCall","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"video_stopped","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_as","type":"InputPeer"},{"name":"invite_hash","type":"flags.1?string"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":1342404601,"method":"phone.leaveGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"source","type":"int"}],"type":"Updates"},{"id":2067345760,"method":"phone.inviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":2054648117,"method":"phone.discardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1958458429,"method":"phone.toggleGroupCallSettings","params":[{"name":"flags","type":"#"},{"name":"reset_invite_hash","type":"flags.1?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_muted","type":"flags.0?Bool"}],"type":"Updates"},{"id":68699611,"method":"phone.getGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"limit","type":"int"}],"type":"phone.GroupCall"},{"id":-984033109,"method":"phone.getGroupParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"ids","type":"Vector"},{"name":"sources","type":"Vector"},{"name":"offset","type":"string"},{"name":"limit","type":"int"}],"type":"phone.GroupParticipants"},{"id":-1248003721,"method":"phone.checkGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"sources","type":"Vector"}],"type":"Vector"},{"id":-2094760687,"method":"messages.deleteChat","params":[{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":-104078327,"method":"messages.deletePhoneCallHistory","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"}],"type":"messages.AffectedFoundMessages"},{"id":1140726259,"method":"messages.checkHistoryImport","params":[{"name":"import_head","type":"string"}],"type":"messages.HistoryImportParsed"},{"id":873008187,"method":"messages.initHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"file","type":"InputFile"},{"name":"media_count","type":"int"}],"type":"messages.HistoryImport"},{"id":713433234,"method":"messages.uploadImportedMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"},{"name":"file_name","type":"string"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":-1271008444,"method":"messages.startHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"}],"type":"Bool"},{"id":-1565154314,"method":"messages.getExportedChatInvites","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.3?true"},{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"},{"name":"offset_date","type":"flags.2?int"},{"name":"offset_link","type":"flags.2?string"},{"name":"limit","type":"int"}],"type":"messages.ExportedChatInvites"},{"id":1937010524,"method":"messages.getExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"messages.ExportedChatInvite"},{"id":48562110,"method":"messages.editExportedChatInvite","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"messages.ExportedChatInvite"},{"id":1452833749,"method":"messages.deleteRevokedExportedChatInvites","params":[{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"}],"type":"Bool"},{"id":-731601877,"method":"messages.deleteExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"Bool"},{"id":958457583,"method":"messages.getAdminsWithInvites","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.ChatAdminsWithInvites"},{"id":654013065,"method":"messages.getChatInviteImporters","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"offset_date","type":"int"},{"name":"offset_user","type":"InputUser"},{"name":"limit","type":"int"}],"type":"messages.ChatInviteImporters"},{"id":-1207017500,"method":"messages.setHistoryTTL","params":[{"name":"peer","type":"InputPeer"},{"name":"period","type":"int"}],"type":"Updates"},{"id":-91437323,"method":"account.reportProfilePhoto","params":[{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"InputPhoto"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":187239529,"method":"channels.convertToGigagroup","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":1573261059,"method":"messages.checkHistoryImportPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-1070962985,"method":"phone.toggleGroupCallRecord","params":[{"name":"flags","type":"#"},{"name":"start","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"},{"name":"title","type":"flags.1?string"}],"type":"Updates"},{"id":-1524155713,"method":"phone.editGroupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"participant","type":"InputPeer"},{"name":"muted","type":"flags.0?Bool"},{"name":"volume","type":"flags.1?int"},{"name":"raise_hand","type":"flags.2?Bool"},{"name":"video_stopped","type":"flags.3?Bool"},{"name":"video_paused","type":"flags.4?Bool"},{"name":"presentation_paused","type":"flags.5?Bool"}],"type":"Updates"},{"id":480685066,"method":"phone.editGroupCallTitle","params":[{"name":"call","type":"InputGroupCall"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-277077702,"method":"phone.getGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"}],"type":"phone.JoinAsPeers"},{"id":-425040769,"method":"phone.exportGroupCallInvite","params":[{"name":"flags","type":"#"},{"name":"can_self_unmute","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"}],"type":"phone.ExportedGroupCallInvite"},{"id":563885286,"method":"phone.toggleGroupCallStartSubscription","params":[{"name":"call","type":"InputGroupCall"},{"name":"subscribed","type":"Bool"}],"type":"Updates"},{"id":1451287362,"method":"phone.startScheduledGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1465786252,"method":"phone.saveDefaultGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"},{"name":"join_as","type":"InputPeer"}],"type":"Bool"},{"id":-873829436,"method":"phone.joinGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":475058500,"method":"phone.leaveGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":676017721,"method":"stickers.checkShortName","params":[{"name":"short_name","type":"string"}],"type":"Bool"},{"id":1303364867,"method":"stickers.suggestShortName","params":[{"name":"title","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":1032708345,"method":"bots.resetBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Bool"},{"id":-481554986,"method":"bots.getBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Vector"},{"id":-1828139493,"method":"account.resetPassword","params":[],"type":"account.ResetPasswordResult"},{"id":1284770294,"method":"account.declinePasswordReset","params":[],"type":"Bool"},{"id":221691769,"method":"auth.checkRecoveryPassword","params":[{"name":"code","type":"string"}],"type":"Bool"}]},"layer":131} as { +export default {"MTProto":{"constructors":[{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":85337187,"predicate":"resPQ","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"pq","type":"bytes"},{"name":"server_public_key_fingerprints","type":"Vector"}],"type":"ResPQ"},{"id":-1443537003,"predicate":"p_q_inner_data_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"}],"type":"P_Q_inner_data"},{"id":1459478408,"predicate":"p_q_inner_data_temp_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"},{"name":"expires_in","type":"int"}],"type":"P_Q_inner_data"},{"id":-790100132,"predicate":"server_DH_params_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_answer","type":"bytes"}],"type":"Server_DH_Params"},{"id":-1249309254,"predicate":"server_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"g","type":"int"},{"name":"dh_prime","type":"bytes"},{"name":"g_a","type":"bytes"},{"name":"server_time","type":"int"}],"type":"Server_DH_inner_data"},{"id":1715713620,"predicate":"client_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"retry_id","type":"long"},{"name":"g_b","type":"bytes"}],"type":"Client_DH_Inner_Data"},{"id":1003222836,"predicate":"dh_gen_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash1","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1188831161,"predicate":"dh_gen_retry","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash2","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":-1499615742,"predicate":"dh_gen_fail","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash3","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1973679973,"predicate":"bind_auth_key_inner","params":[{"name":"nonce","type":"long"},{"name":"temp_auth_key_id","type":"long"},{"name":"perm_auth_key_id","type":"long"},{"name":"temp_session_id","type":"long"},{"name":"expires_at","type":"int"}],"type":"BindAuthKeyInner"},{"id":-212046591,"predicate":"rpc_result","params":[{"name":"req_msg_id","type":"long"},{"name":"result","type":"Object"}],"type":"RpcResult"},{"id":558156313,"predicate":"rpc_error","params":[{"name":"error_code","type":"int"},{"name":"error_message","type":"string"}],"type":"RpcError"},{"id":1579864942,"predicate":"rpc_answer_unknown","params":[],"type":"RpcDropAnswer"},{"id":-847714938,"predicate":"rpc_answer_dropped_running","params":[],"type":"RpcDropAnswer"},{"id":-1539647305,"predicate":"rpc_answer_dropped","params":[{"name":"msg_id","type":"long"},{"name":"seq_no","type":"int"},{"name":"bytes","type":"int"}],"type":"RpcDropAnswer"},{"id":155834844,"predicate":"future_salt","params":[{"name":"valid_since","type":"int"},{"name":"valid_until","type":"int"},{"name":"salt","type":"long"}],"type":"FutureSalt"},{"id":-1370486635,"predicate":"future_salts","params":[{"name":"req_msg_id","type":"long"},{"name":"now","type":"int"},{"name":"salts","type":"vector"}],"type":"FutureSalts"},{"id":880243653,"predicate":"pong","params":[{"name":"msg_id","type":"long"},{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-501201412,"predicate":"destroy_session_ok","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":1658015945,"predicate":"destroy_session_none","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1631450872,"predicate":"new_session_created","params":[{"name":"first_msg_id","type":"long"},{"name":"unique_id","type":"long"},{"name":"server_salt","type":"long"}],"type":"NewSession"},{"id":1945237724,"predicate":"msg_container","params":[{"name":"messages","type":"vector<%Message>"}],"type":"MessageContainer"},{"id":1538843921,"predicate":"message","params":[{"name":"msg_id","type":"long"},{"name":"seqno","type":"int"},{"name":"bytes","type":"int"},{"name":"body","type":"Object"}],"type":"Message"},{"id":-530561358,"predicate":"msg_copy","params":[{"name":"orig_message","type":"Message"}],"type":"MessageCopy"},{"id":812830625,"predicate":"gzip_packed","params":[{"name":"packed_data","type":"bytes"}],"type":"Object"},{"id":1658238041,"predicate":"msgs_ack","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsAck"},{"id":-1477445615,"predicate":"bad_msg_notification","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"}],"type":"BadMsgNotification"},{"id":-307542917,"predicate":"bad_server_salt","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"},{"name":"new_server_salt","type":"long"}],"type":"BadMsgNotification"},{"id":2105940488,"predicate":"msg_resend_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgResendReq"},{"id":-630588590,"predicate":"msgs_state_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsStateReq"},{"id":81704317,"predicate":"msgs_state_info","params":[{"name":"req_msg_id","type":"long"},{"name":"info","type":"bytes"}],"type":"MsgsStateInfo"},{"id":-1933520591,"predicate":"msgs_all_info","params":[{"name":"msg_ids","type":"Vector"},{"name":"info","type":"bytes"}],"type":"MsgsAllInfo"},{"id":661470918,"predicate":"msg_detailed_info","params":[{"name":"msg_id","type":"long"},{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-2137147681,"predicate":"msg_new_detailed_info","params":[{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-161422892,"predicate":"destroy_auth_key_ok","params":[],"type":"DestroyAuthKeyRes"},{"id":178201177,"predicate":"destroy_auth_key_none","params":[],"type":"DestroyAuthKeyRes"},{"id":-368010477,"predicate":"destroy_auth_key_fail","params":[],"type":"DestroyAuthKeyRes"}],"methods":[{"id":-1099002127,"method":"req_pq_multi","params":[{"name":"nonce","type":"int128"}],"type":"ResPQ"},{"id":-686627650,"method":"req_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"public_key_fingerprint","type":"long"},{"name":"encrypted_data","type":"bytes"}],"type":"Server_DH_Params"},{"id":-184262881,"method":"set_client_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_data","type":"bytes"}],"type":"Set_client_DH_params_answer"},{"id":1491380032,"method":"rpc_drop_answer","params":[{"name":"req_msg_id","type":"long"}],"type":"RpcDropAnswer"},{"id":-1188971260,"method":"get_future_salts","params":[{"name":"num","type":"int"}],"type":"FutureSalts"},{"id":2059302892,"method":"ping","params":[{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-213746804,"method":"ping_delay_disconnect","params":[{"name":"ping_id","type":"long"},{"name":"disconnect_delay","type":"int"}],"type":"Pong"},{"id":-414113498,"method":"destroy_session","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1835453025,"method":"http_wait","params":[{"name":"max_delay","type":"int"},{"name":"wait_after","type":"int"},{"name":"max_wait","type":"int"}],"type":"HttpWait"},{"id":-784117408,"method":"destroy_auth_key","params":[],"type":"DestroyAuthKeyRes"}]},"API":{"constructors":[{"id":-1132882121,"predicate":"boolFalse","params":[],"type":"Bool"},{"id":-1720552011,"predicate":"boolTrue","params":[],"type":"Bool"},{"id":1072550713,"predicate":"true","params":[],"type":"True"},{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":-994444869,"predicate":"error","params":[{"name":"code","type":"int"},{"name":"text","type":"string"}],"type":"Error"},{"id":1450380236,"predicate":"null","params":[],"type":"Null"},{"id":2134579434,"predicate":"inputPeerEmpty","params":[],"type":"InputPeer"},{"id":2107670217,"predicate":"inputPeerSelf","params":[],"type":"InputPeer"},{"id":900291769,"predicate":"inputPeerChat","params":[{"name":"chat_id","type":"long"}],"type":"InputPeer"},{"id":-571955892,"predicate":"inputPeerUser","params":[{"name":"user_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":666680316,"predicate":"inputPeerChannel","params":[{"name":"channel_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":-1468331492,"predicate":"inputPeerUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"long"}],"type":"InputPeer"},{"id":-1121318848,"predicate":"inputPeerChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"long"}],"type":"InputPeer"},{"id":-1182234929,"predicate":"inputUserEmpty","params":[],"type":"InputUser"},{"id":-138301121,"predicate":"inputUserSelf","params":[],"type":"InputUser"},{"id":-233744186,"predicate":"inputUser","params":[{"name":"user_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputUser"},{"id":497305826,"predicate":"inputUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"long"}],"type":"InputUser"},{"id":-208488460,"predicate":"inputPhoneContact","params":[{"name":"client_id","type":"long"},{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"InputContact"},{"id":-181407105,"predicate":"inputFile","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"},{"name":"md5_checksum","type":"string"}],"type":"InputFile"},{"id":-95482955,"predicate":"inputFileBig","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"}],"type":"InputFile"},{"id":-1771768449,"predicate":"inputMediaEmpty","params":[],"type":"InputMedia"},{"id":505969924,"predicate":"inputMediaUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":-1279654347,"predicate":"inputMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputPhoto"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-104578748,"predicate":"inputMediaGeoPoint","params":[{"name":"geo_point","type":"InputGeoPoint"}],"type":"InputMedia"},{"id":-122978821,"predicate":"inputMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"}],"type":"InputMedia"},{"id":1530447553,"predicate":"inputMediaUploadedDocument","params":[{"name":"flags","type":"#"},{"name":"nosound_video","type":"flags.3?true"},{"name":"force_file","type":"flags.4?true"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.2?InputFile"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":860303448,"predicate":"inputMediaDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputDocument"},{"name":"ttl_seconds","type":"flags.0?int"},{"name":"query","type":"flags.1?string"}],"type":"InputMedia"},{"id":-1052959727,"predicate":"inputMediaVenue","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"InputMedia"},{"id":-440664550,"predicate":"inputMediaPhotoExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-78455655,"predicate":"inputMediaDocumentExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-750828557,"predicate":"inputMediaGame","params":[{"name":"id","type":"InputGame"}],"type":"InputMedia"},{"id":-646342540,"predicate":"inputMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"start_param","type":"flags.1?string"}],"type":"InputMedia"},{"id":-1759532989,"predicate":"inputMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"stopped","type":"flags.0?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.2?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"}],"type":"InputMedia"},{"id":261416433,"predicate":"inputMediaPoll","params":[{"name":"flags","type":"#"},{"name":"poll","type":"Poll"},{"name":"correct_answers","type":"flags.0?Vector"},{"name":"solution","type":"flags.1?string"},{"name":"solution_entities","type":"flags.1?Vector"}],"type":"InputMedia"},{"id":-428884101,"predicate":"inputMediaDice","params":[{"name":"emoticon","type":"string"}],"type":"InputMedia"},{"id":480546647,"predicate":"inputChatPhotoEmpty","params":[],"type":"InputChatPhoto"},{"id":-968723890,"predicate":"inputChatUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"InputChatPhoto"},{"id":-1991004873,"predicate":"inputChatPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputChatPhoto"},{"id":-457104426,"predicate":"inputGeoPointEmpty","params":[],"type":"InputGeoPoint"},{"id":1210199983,"predicate":"inputGeoPoint","params":[{"name":"flags","type":"#"},{"name":"lat","type":"double"},{"name":"long","type":"double"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"InputGeoPoint"},{"id":483901197,"predicate":"inputPhotoEmpty","params":[],"type":"InputPhoto"},{"id":1001634122,"predicate":"inputPhoto","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputPhoto"},{"id":-539317279,"predicate":"inputFileLocation","params":[{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputFileLocation"},{"id":-182231723,"predicate":"inputEncryptedFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":-1160743548,"predicate":"inputDocumentFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":-876089816,"predicate":"inputSecureFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":700340377,"predicate":"inputTakeoutFileLocation","params":[],"type":"InputFileLocation"},{"id":1075322878,"predicate":"inputPhotoFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":-667654413,"predicate":"inputPhotoLegacyFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"}],"type":"InputFileLocation"},{"id":925204121,"predicate":"inputPeerPhotoFileLocation","params":[{"name":"flags","type":"#"},{"name":"big","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"long"}],"type":"InputFileLocation"},{"id":-1652231205,"predicate":"inputStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb_version","type":"int"}],"type":"InputFileLocation"},{"id":93890858,"predicate":"inputGroupCallStream","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"time_ms","type":"long"},{"name":"scale","type":"int"},{"name":"video_channel","type":"flags.0?int"},{"name":"video_quality","type":"flags.0?int"}],"type":"InputFileLocation"},{"id":1498486562,"predicate":"peerUser","params":[{"name":"user_id","type":"long"}],"type":"Peer"},{"id":918946202,"predicate":"peerChat","params":[{"name":"chat_id","type":"long"}],"type":"Peer"},{"id":-1566230754,"predicate":"peerChannel","params":[{"name":"channel_id","type":"long"}],"type":"Peer"},{"id":-1432995067,"predicate":"storage.fileUnknown","params":[],"type":"storage.FileType"},{"id":1086091090,"predicate":"storage.filePartial","params":[],"type":"storage.FileType"},{"id":8322574,"predicate":"storage.fileJpeg","params":[],"type":"storage.FileType"},{"id":-891180321,"predicate":"storage.fileGif","params":[],"type":"storage.FileType"},{"id":172975040,"predicate":"storage.filePng","params":[],"type":"storage.FileType"},{"id":-1373745011,"predicate":"storage.filePdf","params":[],"type":"storage.FileType"},{"id":1384777335,"predicate":"storage.fileMp3","params":[],"type":"storage.FileType"},{"id":1258941372,"predicate":"storage.fileMov","params":[],"type":"storage.FileType"},{"id":-1278304028,"predicate":"storage.fileMp4","params":[],"type":"storage.FileType"},{"id":276907596,"predicate":"storage.fileWebp","params":[],"type":"storage.FileType"},{"id":-742634630,"predicate":"userEmpty","params":[{"name":"id","type":"long"}],"type":"User"},{"id":1073147056,"predicate":"user","params":[{"name":"flags","type":"#"},{"name":"self","type":"flags.10?true"},{"name":"contact","type":"flags.11?true"},{"name":"mutual_contact","type":"flags.12?true"},{"name":"deleted","type":"flags.13?true"},{"name":"bot","type":"flags.14?true"},{"name":"bot_chat_history","type":"flags.15?true"},{"name":"bot_nochats","type":"flags.16?true"},{"name":"verified","type":"flags.17?true"},{"name":"restricted","type":"flags.18?true"},{"name":"min","type":"flags.20?true"},{"name":"bot_inline_geo","type":"flags.21?true"},{"name":"support","type":"flags.23?true"},{"name":"scam","type":"flags.24?true"},{"name":"apply_min_photo","type":"flags.25?true"},{"name":"fake","type":"flags.26?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"flags.0?long"},{"name":"first_name","type":"flags.1?string"},{"name":"last_name","type":"flags.2?string"},{"name":"username","type":"flags.3?string"},{"name":"phone","type":"flags.4?string"},{"name":"photo","type":"flags.5?UserProfilePhoto"},{"name":"status","type":"flags.6?UserStatus"},{"name":"bot_info_version","type":"flags.14?int"},{"name":"restriction_reason","type":"flags.18?Vector"},{"name":"bot_inline_placeholder","type":"flags.19?string"},{"name":"lang_code","type":"flags.22?string"}],"type":"User"},{"id":1326562017,"predicate":"userProfilePhotoEmpty","params":[],"type":"UserProfilePhoto"},{"id":-2100168954,"predicate":"userProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"UserProfilePhoto"},{"id":164646985,"predicate":"userStatusEmpty","params":[],"type":"UserStatus"},{"id":-306628279,"predicate":"userStatusOnline","params":[{"name":"expires","type":"int"}],"type":"UserStatus"},{"id":9203775,"predicate":"userStatusOffline","params":[{"name":"was_online","type":"int"}],"type":"UserStatus"},{"id":-496024847,"predicate":"userStatusRecently","params":[],"type":"UserStatus"},{"id":129960444,"predicate":"userStatusLastWeek","params":[],"type":"UserStatus"},{"id":2011940674,"predicate":"userStatusLastMonth","params":[],"type":"UserStatus"},{"id":693512293,"predicate":"chatEmpty","params":[{"name":"id","type":"long"}],"type":"Chat"},{"id":1103884886,"predicate":"chat","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"kicked","type":"flags.1?true"},{"name":"left","type":"flags.2?true"},{"name":"deactivated","type":"flags.5?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"id","type":"long"},{"name":"title","type":"string"},{"name":"photo","type":"ChatPhoto"},{"name":"participants_count","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"migrated_to","type":"flags.6?InputChannel"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"}],"type":"Chat"},{"id":1704108455,"predicate":"chatForbidden","params":[{"name":"id","type":"long"},{"name":"title","type":"string"}],"type":"Chat"},{"id":-2107528095,"predicate":"channel","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"left","type":"flags.2?true"},{"name":"broadcast","type":"flags.5?true"},{"name":"verified","type":"flags.7?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"restricted","type":"flags.9?true"},{"name":"signatures","type":"flags.11?true"},{"name":"min","type":"flags.12?true"},{"name":"scam","type":"flags.19?true"},{"name":"has_link","type":"flags.20?true"},{"name":"has_geo","type":"flags.21?true"},{"name":"slowmode_enabled","type":"flags.22?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"fake","type":"flags.25?true"},{"name":"gigagroup","type":"flags.26?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"flags.13?long"},{"name":"title","type":"string"},{"name":"username","type":"flags.6?string"},{"name":"photo","type":"ChatPhoto"},{"name":"date","type":"int"},{"name":"restriction_reason","type":"flags.9?Vector"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"banned_rights","type":"flags.15?ChatBannedRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"},{"name":"participants_count","type":"flags.17?int"}],"type":"Chat"},{"id":399807445,"predicate":"channelForbidden","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.5?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"until_date","type":"flags.16?int"}],"type":"Chat"},{"id":1304281241,"predicate":"chatFull","params":[{"name":"flags","type":"#"},{"name":"can_set_username","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.8?true"},{"name":"id","type":"long"},{"name":"about","type":"string"},{"name":"participants","type":"ChatParticipants"},{"name":"chat_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.13?ExportedChatInvite"},{"name":"bot_info","type":"flags.3?Vector"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"call","type":"flags.12?InputGroupCall"},{"name":"ttl_period","type":"flags.14?int"},{"name":"groupcall_default_join_as","type":"flags.15?Peer"},{"name":"theme_emoticon","type":"flags.16?string"}],"type":"ChatFull"},{"id":-374179305,"predicate":"channelFull","params":[{"name":"flags","type":"#"},{"name":"can_view_participants","type":"flags.3?true"},{"name":"can_set_username","type":"flags.6?true"},{"name":"can_set_stickers","type":"flags.7?true"},{"name":"hidden_prehistory","type":"flags.10?true"},{"name":"can_set_location","type":"flags.16?true"},{"name":"has_scheduled","type":"flags.19?true"},{"name":"can_view_stats","type":"flags.20?true"},{"name":"blocked","type":"flags.22?true"},{"name":"id","type":"long"},{"name":"about","type":"string"},{"name":"participants_count","type":"flags.0?int"},{"name":"admins_count","type":"flags.1?int"},{"name":"kicked_count","type":"flags.2?int"},{"name":"banned_count","type":"flags.2?int"},{"name":"online_count","type":"flags.13?int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"chat_photo","type":"Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.23?ExportedChatInvite"},{"name":"bot_info","type":"Vector"},{"name":"migrated_from_chat_id","type":"flags.4?long"},{"name":"migrated_from_max_id","type":"flags.4?int"},{"name":"pinned_msg_id","type":"flags.5?int"},{"name":"stickerset","type":"flags.8?StickerSet"},{"name":"available_min_id","type":"flags.9?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"linked_chat_id","type":"flags.14?long"},{"name":"location","type":"flags.15?ChannelLocation"},{"name":"slowmode_seconds","type":"flags.17?int"},{"name":"slowmode_next_send_date","type":"flags.18?int"},{"name":"stats_dc","type":"flags.12?int"},{"name":"pts","type":"int"},{"name":"call","type":"flags.21?InputGroupCall"},{"name":"ttl_period","type":"flags.24?int"},{"name":"pending_suggestions","type":"flags.25?Vector"},{"name":"groupcall_default_join_as","type":"flags.26?Peer"},{"name":"theme_emoticon","type":"flags.27?string"}],"type":"ChatFull"},{"id":-1070776313,"predicate":"chatParticipant","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-462696732,"predicate":"chatParticipantCreator","params":[{"name":"user_id","type":"long"}],"type":"ChatParticipant"},{"id":-1600962725,"predicate":"chatParticipantAdmin","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-2023500831,"predicate":"chatParticipantsForbidden","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"long"},{"name":"self_participant","type":"flags.0?ChatParticipant"}],"type":"ChatParticipants"},{"id":1018991608,"predicate":"chatParticipants","params":[{"name":"chat_id","type":"long"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"ChatParticipants"},{"id":935395612,"predicate":"chatPhotoEmpty","params":[],"type":"ChatPhoto"},{"id":476978193,"predicate":"chatPhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"ChatPhoto"},{"id":-1868117372,"predicate":"messageEmpty","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"peer_id","type":"flags.0?Peer"}],"type":"Message"},{"id":-2049520670,"predicate":"message","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"from_scheduled","type":"flags.18?true"},{"name":"legacy","type":"flags.19?true"},{"name":"edit_hide","type":"flags.21?true"},{"name":"pinned","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"message","type":"string"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"reply_markup","type":"flags.6?ReplyMarkup"},{"name":"entities","type":"flags.7?Vector"},{"name":"views","type":"flags.10?int"},{"name":"forwards","type":"flags.10?int"},{"name":"replies","type":"flags.23?MessageReplies"},{"name":"edit_date","type":"flags.15?int"},{"name":"post_author","type":"flags.16?string"},{"name":"grouped_id","type":"flags.17?long"},{"name":"restriction_reason","type":"flags.22?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":721967202,"predicate":"messageService","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"legacy","type":"flags.19?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"action","type":"MessageAction"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":1038967584,"predicate":"messageMediaEmpty","params":[],"type":"MessageMedia"},{"id":1766936791,"predicate":"messageMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"photo","type":"flags.0?Photo"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1457575028,"predicate":"messageMediaGeo","params":[{"name":"geo","type":"GeoPoint"}],"type":"MessageMedia"},{"id":1882335561,"predicate":"messageMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"user_id","type":"long"}],"type":"MessageMedia"},{"id":-1618676578,"predicate":"messageMediaUnsupported","params":[],"type":"MessageMedia"},{"id":-1666158377,"predicate":"messageMediaDocument","params":[{"name":"flags","type":"#"},{"name":"document","type":"flags.0?Document"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":-1557277184,"predicate":"messageMediaWebPage","params":[{"name":"webpage","type":"WebPage"}],"type":"MessageMedia"},{"id":784356159,"predicate":"messageMediaVenue","params":[{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"MessageMedia"},{"id":-38694904,"predicate":"messageMediaGame","params":[{"name":"game","type":"Game"}],"type":"MessageMedia"},{"id":-2074799289,"predicate":"messageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"receipt_msg_id","type":"flags.2?int"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"start_param","type":"string"}],"type":"MessageMedia"},{"id":-1186937242,"predicate":"messageMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"int"},{"name":"proximity_notification_radius","type":"flags.1?int"}],"type":"MessageMedia"},{"id":1272375192,"predicate":"messageMediaPoll","params":[{"name":"poll","type":"Poll"},{"name":"results","type":"PollResults"}],"type":"MessageMedia"},{"id":1065280907,"predicate":"messageMediaDice","params":[{"name":"value","type":"int"},{"name":"emoticon","type":"string"}],"type":"MessageMedia"},{"id":-1230047312,"predicate":"messageActionEmpty","params":[],"type":"MessageAction"},{"id":-1119368275,"predicate":"messageActionChatCreate","params":[{"name":"title","type":"string"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1247687078,"predicate":"messageActionChatEditTitle","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":2144015272,"predicate":"messageActionChatEditPhoto","params":[{"name":"photo","type":"Photo"}],"type":"MessageAction"},{"id":-1780220945,"predicate":"messageActionChatDeletePhoto","params":[],"type":"MessageAction"},{"id":365886720,"predicate":"messageActionChatAddUser","params":[{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1539362612,"predicate":"messageActionChatDeleteUser","params":[{"name":"user_id","type":"long"}],"type":"MessageAction"},{"id":51520707,"predicate":"messageActionChatJoinedByLink","params":[{"name":"inviter_id","type":"long"}],"type":"MessageAction"},{"id":-1781355374,"predicate":"messageActionChannelCreate","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":-519864430,"predicate":"messageActionChatMigrateTo","params":[{"name":"channel_id","type":"long"}],"type":"MessageAction"},{"id":-365344535,"predicate":"messageActionChannelMigrateFrom","params":[{"name":"title","type":"string"},{"name":"chat_id","type":"long"}],"type":"MessageAction"},{"id":-1799538451,"predicate":"messageActionPinMessage","params":[],"type":"MessageAction"},{"id":-1615153660,"predicate":"messageActionHistoryClear","params":[],"type":"MessageAction"},{"id":-1834538890,"predicate":"messageActionGameScore","params":[{"name":"game_id","type":"long"},{"name":"score","type":"int"}],"type":"MessageAction"},{"id":-1892568281,"predicate":"messageActionPaymentSentMe","params":[{"name":"flags","type":"#"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"charge","type":"PaymentCharge"}],"type":"MessageAction"},{"id":1080663248,"predicate":"messageActionPaymentSent","params":[{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"MessageAction"},{"id":-2132731265,"predicate":"messageActionPhoneCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.2?true"},{"name":"call_id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"MessageAction"},{"id":1200788123,"predicate":"messageActionScreenshotTaken","params":[],"type":"MessageAction"},{"id":-85549226,"predicate":"messageActionCustomAction","params":[{"name":"message","type":"string"}],"type":"MessageAction"},{"id":-1410748418,"predicate":"messageActionBotAllowed","params":[{"name":"domain","type":"string"}],"type":"MessageAction"},{"id":455635795,"predicate":"messageActionSecureValuesSentMe","params":[{"name":"values","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"MessageAction"},{"id":-648257196,"predicate":"messageActionSecureValuesSent","params":[{"name":"types","type":"Vector"}],"type":"MessageAction"},{"id":-202219658,"predicate":"messageActionContactSignUp","params":[],"type":"MessageAction"},{"id":-1730095465,"predicate":"messageActionGeoProximityReached","params":[{"name":"from_id","type":"Peer"},{"name":"to_id","type":"Peer"},{"name":"distance","type":"int"}],"type":"MessageAction"},{"id":2047704898,"predicate":"messageActionGroupCall","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"duration","type":"flags.0?int"}],"type":"MessageAction"},{"id":1345295095,"predicate":"messageActionInviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1441072131,"predicate":"messageActionSetMessagesTTL","params":[{"name":"period","type":"int"}],"type":"MessageAction"},{"id":-1281329567,"predicate":"messageActionGroupCallScheduled","params":[{"name":"call","type":"InputGroupCall"},{"name":"schedule_date","type":"int"}],"type":"MessageAction"},{"id":-1434950843,"predicate":"messageActionSetChatTheme","params":[{"name":"emoticon","type":"string"}],"type":"MessageAction"},{"id":739712882,"predicate":"dialog","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"unread_mark","type":"flags.3?true"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"unread_mentions_count","type":"int"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"pts","type":"flags.0?int"},{"name":"draft","type":"flags.1?DraftMessage"},{"name":"folder_id","type":"flags.4?int"}],"type":"Dialog"},{"id":1908216652,"predicate":"dialogFolder","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"folder","type":"Folder"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"unread_muted_peers_count","type":"int"},{"name":"unread_unmuted_peers_count","type":"int"},{"name":"unread_muted_messages_count","type":"int"},{"name":"unread_unmuted_messages_count","type":"int"}],"type":"Dialog"},{"id":590459437,"predicate":"photoEmpty","params":[{"name":"id","type":"long"}],"type":"Photo"},{"id":-82216347,"predicate":"photo","params":[{"name":"flags","type":"#"},{"name":"has_stickers","type":"flags.0?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"sizes","type":"Vector"},{"name":"video_sizes","type":"flags.1?Vector"},{"name":"dc_id","type":"int"}],"type":"Photo"},{"id":236446268,"predicate":"photoSizeEmpty","params":[{"name":"type","type":"string"}],"type":"PhotoSize"},{"id":1976012384,"predicate":"photoSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"}],"type":"PhotoSize"},{"id":35527382,"predicate":"photoCachedSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":-525288402,"predicate":"photoStrippedSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":-96535659,"predicate":"photoSizeProgressive","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"sizes","type":"Vector"}],"type":"PhotoSize"},{"id":-668906175,"predicate":"photoPathSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":286776671,"predicate":"geoPointEmpty","params":[],"type":"GeoPoint"},{"id":-1297942941,"predicate":"geoPoint","params":[{"name":"flags","type":"#"},{"name":"long","type":"double"},{"name":"lat","type":"double"},{"name":"access_hash","type":"long"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"GeoPoint"},{"id":1577067778,"predicate":"auth.sentCode","params":[{"name":"flags","type":"#"},{"name":"type","type":"auth.SentCodeType"},{"name":"phone_code_hash","type":"string"},{"name":"next_type","type":"flags.1?auth.CodeType"},{"name":"timeout","type":"flags.2?int"}],"type":"auth.SentCode"},{"id":-855308010,"predicate":"auth.authorization","params":[{"name":"flags","type":"#"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"user","type":"User"}],"type":"auth.Authorization"},{"id":1148485274,"predicate":"auth.authorizationSignUpRequired","params":[{"name":"flags","type":"#"},{"name":"terms_of_service","type":"flags.0?help.TermsOfService"}],"type":"auth.Authorization"},{"id":-1271602504,"predicate":"auth.exportedAuthorization","params":[{"name":"id","type":"long"},{"name":"bytes","type":"bytes"}],"type":"auth.ExportedAuthorization"},{"id":-1195615476,"predicate":"inputNotifyPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputNotifyPeer"},{"id":423314455,"predicate":"inputNotifyUsers","params":[],"type":"InputNotifyPeer"},{"id":1251338318,"predicate":"inputNotifyChats","params":[],"type":"InputNotifyPeer"},{"id":-1311015810,"predicate":"inputNotifyBroadcasts","params":[],"type":"InputNotifyPeer"},{"id":-1673717362,"predicate":"inputPeerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"InputPeerNotifySettings"},{"id":-1353671392,"predicate":"peerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"PeerNotifySettings"},{"id":1933519201,"predicate":"peerSettings","params":[{"name":"flags","type":"#"},{"name":"report_spam","type":"flags.0?true"},{"name":"add_contact","type":"flags.1?true"},{"name":"block_contact","type":"flags.2?true"},{"name":"share_contact","type":"flags.3?true"},{"name":"need_contacts_exception","type":"flags.4?true"},{"name":"report_geo","type":"flags.5?true"},{"name":"autoarchived","type":"flags.7?true"},{"name":"invite_members","type":"flags.8?true"},{"name":"geo_distance","type":"flags.6?int"}],"type":"PeerSettings"},{"id":-1539849235,"predicate":"wallPaper","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"pattern","type":"flags.3?true"},{"name":"dark","type":"flags.4?true"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"document","type":"Document"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":-528465642,"predicate":"wallPaperNoFile","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"default","type":"flags.1?true"},{"name":"dark","type":"flags.4?true"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":1490799288,"predicate":"inputReportReasonSpam","params":[],"type":"ReportReason"},{"id":505595789,"predicate":"inputReportReasonViolence","params":[],"type":"ReportReason"},{"id":777640226,"predicate":"inputReportReasonPornography","params":[],"type":"ReportReason"},{"id":-1376497949,"predicate":"inputReportReasonChildAbuse","params":[],"type":"ReportReason"},{"id":-1041980751,"predicate":"inputReportReasonOther","params":[],"type":"ReportReason"},{"id":-1685456582,"predicate":"inputReportReasonCopyright","params":[],"type":"ReportReason"},{"id":-606798099,"predicate":"inputReportReasonGeoIrrelevant","params":[],"type":"ReportReason"},{"id":-170010905,"predicate":"inputReportReasonFake","params":[],"type":"ReportReason"},{"id":-694681851,"predicate":"userFull","params":[{"name":"flags","type":"#"},{"name":"blocked","type":"flags.0?true"},{"name":"phone_calls_available","type":"flags.4?true"},{"name":"phone_calls_private","type":"flags.5?true"},{"name":"can_pin_message","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.12?true"},{"name":"video_calls_available","type":"flags.13?true"},{"name":"user","type":"User"},{"name":"about","type":"flags.1?string"},{"name":"settings","type":"PeerSettings"},{"name":"profile_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"bot_info","type":"flags.3?BotInfo"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"common_chats_count","type":"int"},{"name":"folder_id","type":"flags.11?int"},{"name":"ttl_period","type":"flags.14?int"},{"name":"theme_emoticon","type":"flags.15?string"}],"type":"UserFull"},{"id":341499403,"predicate":"contact","params":[{"name":"user_id","type":"long"},{"name":"mutual","type":"Bool"}],"type":"Contact"},{"id":-1052885936,"predicate":"importedContact","params":[{"name":"user_id","type":"long"},{"name":"client_id","type":"long"}],"type":"ImportedContact"},{"id":383348795,"predicate":"contactStatus","params":[{"name":"user_id","type":"long"},{"name":"status","type":"UserStatus"}],"type":"ContactStatus"},{"id":-1219778094,"predicate":"contacts.contactsNotModified","params":[],"type":"contacts.Contacts"},{"id":-353862078,"predicate":"contacts.contacts","params":[{"name":"contacts","type":"Vector"},{"name":"saved_count","type":"int"},{"name":"users","type":"Vector"}],"type":"contacts.Contacts"},{"id":2010127419,"predicate":"contacts.importedContacts","params":[{"name":"imported","type":"Vector"},{"name":"popular_invites","type":"Vector"},{"name":"retry_contacts","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":182326673,"predicate":"contacts.blocked","params":[{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":-513392236,"predicate":"contacts.blockedSlice","params":[{"name":"count","type":"int"},{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":364538944,"predicate":"messages.dialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":1910543603,"predicate":"messages.dialogsSlice","params":[{"name":"count","type":"int"},{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":-253500010,"predicate":"messages.dialogsNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Dialogs"},{"id":-1938715001,"predicate":"messages.messages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":978610270,"predicate":"messages.messagesSlice","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"count","type":"int"},{"name":"next_rate","type":"flags.0?int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1682413576,"predicate":"messages.channelMessages","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"pts","type":"int"},{"name":"count","type":"int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1951620897,"predicate":"messages.messagesNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Messages"},{"id":1694474197,"predicate":"messages.chats","params":[{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-1663561404,"predicate":"messages.chatsSlice","params":[{"name":"count","type":"int"},{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-438840932,"predicate":"messages.chatFull","params":[{"name":"full_chat","type":"ChatFull"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatFull"},{"id":-1269012015,"predicate":"messages.affectedHistory","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"}],"type":"messages.AffectedHistory"},{"id":1474492012,"predicate":"inputMessagesFilterEmpty","params":[],"type":"MessagesFilter"},{"id":-1777752804,"predicate":"inputMessagesFilterPhotos","params":[],"type":"MessagesFilter"},{"id":-1614803355,"predicate":"inputMessagesFilterVideo","params":[],"type":"MessagesFilter"},{"id":1458172132,"predicate":"inputMessagesFilterPhotoVideo","params":[],"type":"MessagesFilter"},{"id":-1629621880,"predicate":"inputMessagesFilterDocument","params":[],"type":"MessagesFilter"},{"id":2129714567,"predicate":"inputMessagesFilterUrl","params":[],"type":"MessagesFilter"},{"id":-3644025,"predicate":"inputMessagesFilterGif","params":[],"type":"MessagesFilter"},{"id":1358283666,"predicate":"inputMessagesFilterVoice","params":[],"type":"MessagesFilter"},{"id":928101534,"predicate":"inputMessagesFilterMusic","params":[],"type":"MessagesFilter"},{"id":975236280,"predicate":"inputMessagesFilterChatPhotos","params":[],"type":"MessagesFilter"},{"id":-2134272152,"predicate":"inputMessagesFilterPhoneCalls","params":[{"name":"flags","type":"#"},{"name":"missed","type":"flags.0?true"}],"type":"MessagesFilter"},{"id":2054952868,"predicate":"inputMessagesFilterRoundVoice","params":[],"type":"MessagesFilter"},{"id":-1253451181,"predicate":"inputMessagesFilterRoundVideo","params":[],"type":"MessagesFilter"},{"id":-1040652646,"predicate":"inputMessagesFilterMyMentions","params":[],"type":"MessagesFilter"},{"id":-419271411,"predicate":"inputMessagesFilterGeo","params":[],"type":"MessagesFilter"},{"id":-530392189,"predicate":"inputMessagesFilterContacts","params":[],"type":"MessagesFilter"},{"id":464520273,"predicate":"inputMessagesFilterPinned","params":[],"type":"MessagesFilter"},{"id":522914557,"predicate":"updateNewMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1318109142,"predicate":"updateMessageID","params":[{"name":"id","type":"int"},{"name":"random_id","type":"long"}],"type":"Update"},{"id":-1576161051,"predicate":"updateDeleteMessages","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1071741569,"predicate":"updateUserTyping","params":[{"name":"user_id","type":"long"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-2092401936,"predicate":"updateChatUserTyping","params":[{"name":"chat_id","type":"long"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":125178264,"predicate":"updateChatParticipants","params":[{"name":"participants","type":"ChatParticipants"}],"type":"Update"},{"id":-440534818,"predicate":"updateUserStatus","params":[{"name":"user_id","type":"long"},{"name":"status","type":"UserStatus"}],"type":"Update"},{"id":-1007549728,"predicate":"updateUserName","params":[{"name":"user_id","type":"long"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"username","type":"string"}],"type":"Update"},{"id":-232290676,"predicate":"updateUserPhoto","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"},{"name":"photo","type":"UserProfilePhoto"},{"name":"previous","type":"Bool"}],"type":"Update"},{"id":314359194,"predicate":"updateNewEncryptedMessage","params":[{"name":"message","type":"EncryptedMessage"},{"name":"qts","type":"int"}],"type":"Update"},{"id":386986326,"predicate":"updateEncryptedChatTyping","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":-1264392051,"predicate":"updateEncryption","params":[{"name":"chat","type":"EncryptedChat"},{"name":"date","type":"int"}],"type":"Update"},{"id":956179895,"predicate":"updateEncryptedMessagesRead","params":[{"name":"chat_id","type":"int"},{"name":"max_date","type":"int"},{"name":"date","type":"int"}],"type":"Update"},{"id":1037718609,"predicate":"updateChatParticipantAdd","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":-483443337,"predicate":"updateChatParticipantDelete","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"version","type":"int"}],"type":"Update"},{"id":-1906403213,"predicate":"updateDcOptions","params":[{"name":"dc_options","type":"Vector"}],"type":"Update"},{"id":-1094555409,"predicate":"updateNotifySettings","params":[{"name":"peer","type":"NotifyPeer"},{"name":"notify_settings","type":"PeerNotifySettings"}],"type":"Update"},{"id":-337352679,"predicate":"updateServiceNotification","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"inbox_date","type":"flags.1?int"},{"name":"type","type":"string"},{"name":"message","type":"string"},{"name":"media","type":"MessageMedia"},{"name":"entities","type":"Vector"}],"type":"Update"},{"id":-298113238,"predicate":"updatePrivacy","params":[{"name":"key","type":"PrivacyKey"},{"name":"rules","type":"Vector"}],"type":"Update"},{"id":88680979,"predicate":"updateUserPhone","params":[{"name":"user_id","type":"long"},{"name":"phone","type":"string"}],"type":"Update"},{"id":-1667805217,"predicate":"updateReadHistoryInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":791617983,"predicate":"updateReadHistoryOutbox","params":[{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":2139689491,"predicate":"updateWebPage","params":[{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1757493555,"predicate":"updateReadMessagesContents","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":277713951,"predicate":"updateChannelTooLong","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"pts","type":"flags.0?int"}],"type":"Update"},{"id":1666927625,"predicate":"updateChannel","params":[{"name":"channel_id","type":"long"}],"type":"Update"},{"id":1656358105,"predicate":"updateNewChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1842450928,"predicate":"updateReadChannelInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"channel_id","type":"long"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"}],"type":"Update"},{"id":-1020437742,"predicate":"updateDeleteChannelMessages","params":[{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-232346616,"predicate":"updateChannelMessageViews","params":[{"name":"channel_id","type":"long"},{"name":"id","type":"int"},{"name":"views","type":"int"}],"type":"Update"},{"id":-674602590,"predicate":"updateChatParticipantAdmin","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"is_admin","type":"Bool"},{"name":"version","type":"int"}],"type":"Update"},{"id":1753886890,"predicate":"updateNewStickerSet","params":[{"name":"stickerset","type":"messages.StickerSet"}],"type":"Update"},{"id":196268545,"predicate":"updateStickerSetsOrder","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Update"},{"id":1135492588,"predicate":"updateStickerSets","params":[],"type":"Update"},{"id":-1821035490,"predicate":"updateSavedGifs","params":[],"type":"Update"},{"id":1232025500,"predicate":"updateBotInlineQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"peer_type","type":"flags.1?InlineQueryPeerType"},{"name":"offset","type":"string"}],"type":"Update"},{"id":317794823,"predicate":"updateBotInlineSend","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"long"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"id","type":"string"},{"name":"msg_id","type":"flags.1?InputBotInlineMessageID"}],"type":"Update"},{"id":457133559,"predicate":"updateEditChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1177566067,"predicate":"updateBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":-469536605,"predicate":"updateEditMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1763610706,"predicate":"updateInlineBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"msg_id","type":"InputBotInlineMessageID"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":-1218471511,"predicate":"updateReadChannelOutbox","params":[{"name":"channel_id","type":"long"},{"name":"max_id","type":"int"}],"type":"Update"},{"id":-299124375,"predicate":"updateDraftMessage","params":[{"name":"peer","type":"Peer"},{"name":"draft","type":"DraftMessage"}],"type":"Update"},{"id":1461528386,"predicate":"updateReadFeaturedStickers","params":[],"type":"Update"},{"id":-1706939360,"predicate":"updateRecentStickers","params":[],"type":"Update"},{"id":-1574314746,"predicate":"updateConfig","params":[],"type":"Update"},{"id":861169551,"predicate":"updatePtsChanged","params":[],"type":"Update"},{"id":791390623,"predicate":"updateChannelWebPage","params":[{"name":"channel_id","type":"long"},{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1852826908,"predicate":"updateDialogPinned","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-99664734,"predicate":"updatePinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.1?int"},{"name":"order","type":"flags.0?Vector"}],"type":"Update"},{"id":-2095595325,"predicate":"updateBotWebhookJSON","params":[{"name":"data","type":"DataJSON"}],"type":"Update"},{"id":-1684914010,"predicate":"updateBotWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"},{"name":"timeout","type":"int"}],"type":"Update"},{"id":-1246823043,"predicate":"updateBotShippingQuery","params":[{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"payload","type":"bytes"},{"name":"shipping_address","type":"PostAddress"}],"type":"Update"},{"id":-1934976362,"predicate":"updateBotPrecheckoutQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"Update"},{"id":-1425052898,"predicate":"updatePhoneCall","params":[{"name":"phone_call","type":"PhoneCall"}],"type":"Update"},{"id":1180041828,"predicate":"updateLangPackTooLong","params":[{"name":"lang_code","type":"string"}],"type":"Update"},{"id":1442983757,"predicate":"updateLangPack","params":[{"name":"difference","type":"LangPackDifference"}],"type":"Update"},{"id":-451831443,"predicate":"updateFavedStickers","params":[],"type":"Update"},{"id":1153291573,"predicate":"updateChannelReadMessagesContents","params":[{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":1887741886,"predicate":"updateContactsReset","params":[],"type":"Update"},{"id":-1304443240,"predicate":"updateChannelAvailableMessages","params":[{"name":"channel_id","type":"long"},{"name":"available_min_id","type":"int"}],"type":"Update"},{"id":-513517117,"predicate":"updateDialogUnreadMark","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-1398708869,"predicate":"updateMessagePoll","params":[{"name":"flags","type":"#"},{"name":"poll_id","type":"long"},{"name":"poll","type":"flags.0?Poll"},{"name":"results","type":"PollResults"}],"type":"Update"},{"id":1421875280,"predicate":"updateChatDefaultBannedRights","params":[{"name":"peer","type":"Peer"},{"name":"default_banned_rights","type":"ChatBannedRights"},{"name":"version","type":"int"}],"type":"Update"},{"id":422972864,"predicate":"updateFolderPeers","params":[{"name":"folder_peers","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1786671974,"predicate":"updatePeerSettings","params":[{"name":"peer","type":"Peer"},{"name":"settings","type":"PeerSettings"}],"type":"Update"},{"id":-1263546448,"predicate":"updatePeerLocated","params":[{"name":"peers","type":"Vector"}],"type":"Update"},{"id":967122427,"predicate":"updateNewScheduledMessage","params":[{"name":"message","type":"Message"}],"type":"Update"},{"id":-1870238482,"predicate":"updateDeleteScheduledMessages","params":[{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":-2112423005,"predicate":"updateTheme","params":[{"name":"theme","type":"Theme"}],"type":"Update"},{"id":-2027964103,"predicate":"updateGeoLiveViewed","params":[{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"}],"type":"Update"},{"id":1448076945,"predicate":"updateLoginToken","params":[],"type":"Update"},{"id":274961865,"predicate":"updateMessagePollVote","params":[{"name":"poll_id","type":"long"},{"name":"user_id","type":"long"},{"name":"options","type":"Vector"},{"name":"qts","type":"int"}],"type":"Update"},{"id":654302845,"predicate":"updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Update"},{"id":-1512627963,"predicate":"updateDialogFilterOrder","params":[{"name":"order","type":"Vector"}],"type":"Update"},{"id":889491791,"predicate":"updateDialogFilters","params":[],"type":"Update"},{"id":643940105,"predicate":"updatePhoneCallSignalingData","params":[{"name":"phone_call_id","type":"long"},{"name":"data","type":"bytes"}],"type":"Update"},{"id":-761649164,"predicate":"updateChannelMessageForwards","params":[{"name":"channel_id","type":"long"},{"name":"id","type":"int"},{"name":"forwards","type":"int"}],"type":"Update"},{"id":-693004986,"predicate":"updateReadChannelDiscussionInbox","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"},{"name":"broadcast_id","type":"flags.0?long"},{"name":"broadcast_post","type":"flags.0?int"}],"type":"Update"},{"id":1767677564,"predicate":"updateReadChannelDiscussionOutbox","params":[{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Update"},{"id":610945826,"predicate":"updatePeerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"blocked","type":"Bool"}],"type":"Update"},{"id":-1937192669,"predicate":"updateChannelUserTyping","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-309990731,"predicate":"updatePinnedMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1538885128,"predicate":"updatePinnedChannelMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-124097970,"predicate":"updateChat","params":[{"name":"chat_id","type":"long"}],"type":"Update"},{"id":-219423922,"predicate":"updateGroupCallParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"Update"},{"id":347227392,"predicate":"updateGroupCall","params":[{"name":"chat_id","type":"long"},{"name":"call","type":"GroupCall"}],"type":"Update"},{"id":-1147422299,"predicate":"updatePeerHistoryTTL","params":[{"name":"flags","type":"#"},{"name":"peer","type":"Peer"},{"name":"ttl_period","type":"flags.0?int"}],"type":"Update"},{"id":-796432838,"predicate":"updateChatParticipant","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"long"},{"name":"date","type":"int"},{"name":"actor_id","type":"long"},{"name":"user_id","type":"long"},{"name":"prev_participant","type":"flags.0?ChatParticipant"},{"name":"new_participant","type":"flags.1?ChatParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":-1738720581,"predicate":"updateChannelParticipant","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"date","type":"int"},{"name":"actor_id","type":"long"},{"name":"user_id","type":"long"},{"name":"prev_participant","type":"flags.0?ChannelParticipant"},{"name":"new_participant","type":"flags.1?ChannelParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":-997782967,"predicate":"updateBotStopped","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"},{"name":"stopped","type":"Bool"},{"name":"qts","type":"int"}],"type":"Update"},{"id":192428418,"predicate":"updateGroupCallConnection","params":[{"name":"flags","type":"#"},{"name":"presentation","type":"flags.0?true"},{"name":"params","type":"DataJSON"}],"type":"Update"},{"id":1299263278,"predicate":"updateBotCommands","params":[{"name":"peer","type":"Peer"},{"name":"bot_id","type":"long"},{"name":"commands","type":"Vector"}],"type":"Update"},{"id":-1519637954,"predicate":"updates.state","params":[{"name":"pts","type":"int"},{"name":"qts","type":"int"},{"name":"date","type":"int"},{"name":"seq","type":"int"},{"name":"unread_count","type":"int"}],"type":"updates.State"},{"id":1567990072,"predicate":"updates.differenceEmpty","params":[{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"updates.Difference"},{"id":16030880,"predicate":"updates.difference","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"updates.Difference"},{"id":-1459938943,"predicate":"updates.differenceSlice","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"intermediate_state","type":"updates.State"}],"type":"updates.Difference"},{"id":1258196845,"predicate":"updates.differenceTooLong","params":[{"name":"pts","type":"int"}],"type":"updates.Difference"},{"id":-484987010,"predicate":"updatesTooLong","params":[],"type":"Updates"},{"id":826001400,"predicate":"updateShortMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"user_id","type":"long"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":1299050149,"predicate":"updateShortChatMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"from_id","type":"long"},{"name":"chat_id","type":"long"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":2027216577,"predicate":"updateShort","params":[{"name":"update","type":"Update"},{"name":"date","type":"int"}],"type":"Updates"},{"id":1918567619,"predicate":"updatesCombined","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq_start","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":1957577280,"predicate":"updates","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":-1877614335,"predicate":"updateShortSentMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":-1916114267,"predicate":"photos.photos","params":[{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":352657236,"predicate":"photos.photosSlice","params":[{"name":"count","type":"int"},{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":539045032,"predicate":"photos.photo","params":[{"name":"photo","type":"Photo"},{"name":"users","type":"Vector"}],"type":"photos.Photo"},{"id":157948117,"predicate":"upload.file","params":[{"name":"type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.File"},{"id":-242427324,"predicate":"upload.fileCdnRedirect","params":[{"name":"dc_id","type":"int"},{"name":"file_token","type":"bytes"},{"name":"encryption_key","type":"bytes"},{"name":"encryption_iv","type":"bytes"},{"name":"file_hashes","type":"Vector"}],"type":"upload.File"},{"id":414687501,"predicate":"dcOption","params":[{"name":"flags","type":"#"},{"name":"ipv6","type":"flags.0?true"},{"name":"media_only","type":"flags.1?true"},{"name":"tcpo_only","type":"flags.2?true"},{"name":"cdn","type":"flags.3?true"},{"name":"static","type":"flags.4?true"},{"name":"id","type":"int"},{"name":"ip_address","type":"string"},{"name":"port","type":"int"},{"name":"secret","type":"flags.10?bytes"}],"type":"DcOption"},{"id":856375399,"predicate":"config","params":[{"name":"flags","type":"#"},{"name":"phonecalls_enabled","type":"flags.1?true"},{"name":"default_p2p_contacts","type":"flags.3?true"},{"name":"preload_featured_stickers","type":"flags.4?true"},{"name":"ignore_phone_entities","type":"flags.5?true"},{"name":"revoke_pm_inbox","type":"flags.6?true"},{"name":"blocked_mode","type":"flags.8?true"},{"name":"pfs_enabled","type":"flags.13?true"},{"name":"date","type":"int"},{"name":"expires","type":"int"},{"name":"test_mode","type":"Bool"},{"name":"this_dc","type":"int"},{"name":"dc_options","type":"Vector"},{"name":"dc_txt_domain_name","type":"string"},{"name":"chat_size_max","type":"int"},{"name":"megagroup_size_max","type":"int"},{"name":"forwarded_count_max","type":"int"},{"name":"online_update_period_ms","type":"int"},{"name":"offline_blur_timeout_ms","type":"int"},{"name":"offline_idle_timeout_ms","type":"int"},{"name":"online_cloud_timeout_ms","type":"int"},{"name":"notify_cloud_delay_ms","type":"int"},{"name":"notify_default_delay_ms","type":"int"},{"name":"push_chat_period_ms","type":"int"},{"name":"push_chat_limit","type":"int"},{"name":"saved_gifs_limit","type":"int"},{"name":"edit_time_limit","type":"int"},{"name":"revoke_time_limit","type":"int"},{"name":"revoke_pm_time_limit","type":"int"},{"name":"rating_e_decay","type":"int"},{"name":"stickers_recent_limit","type":"int"},{"name":"stickers_faved_limit","type":"int"},{"name":"channels_read_media_period","type":"int"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"pinned_dialogs_count_max","type":"int"},{"name":"pinned_infolder_count_max","type":"int"},{"name":"call_receive_timeout_ms","type":"int"},{"name":"call_ring_timeout_ms","type":"int"},{"name":"call_connect_timeout_ms","type":"int"},{"name":"call_packet_timeout_ms","type":"int"},{"name":"me_url_prefix","type":"string"},{"name":"autoupdate_url_prefix","type":"flags.7?string"},{"name":"gif_search_username","type":"flags.9?string"},{"name":"venue_search_username","type":"flags.10?string"},{"name":"img_search_username","type":"flags.11?string"},{"name":"static_maps_provider","type":"flags.12?string"},{"name":"caption_length_max","type":"int"},{"name":"message_length_max","type":"int"},{"name":"webfile_dc_id","type":"int"},{"name":"suggested_lang_code","type":"flags.2?string"},{"name":"lang_pack_version","type":"flags.2?int"},{"name":"base_lang_pack_version","type":"flags.2?int"}],"type":"Config"},{"id":-1910892683,"predicate":"nearestDc","params":[{"name":"country","type":"string"},{"name":"this_dc","type":"int"},{"name":"nearest_dc","type":"int"}],"type":"NearestDc"},{"id":-860107216,"predicate":"help.appUpdate","params":[{"name":"flags","type":"#"},{"name":"can_not_skip","type":"flags.0?true"},{"name":"id","type":"int"},{"name":"version","type":"string"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"document","type":"flags.1?Document"},{"name":"url","type":"flags.2?string"},{"name":"sticker","type":"flags.3?Document"}],"type":"help.AppUpdate"},{"id":-1000708810,"predicate":"help.noAppUpdate","params":[],"type":"help.AppUpdate"},{"id":415997816,"predicate":"help.inviteText","params":[{"name":"message","type":"string"}],"type":"help.InviteText"},{"id":-1417756512,"predicate":"encryptedChatEmpty","params":[{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":1722964307,"predicate":"encryptedChatWaiting","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"}],"type":"EncryptedChat"},{"id":1223809356,"predicate":"encryptedChatRequested","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1643173063,"predicate":"encryptedChat","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":505183301,"predicate":"encryptedChatDiscarded","params":[{"name":"flags","type":"#"},{"name":"history_deleted","type":"flags.0?true"},{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":-247351839,"predicate":"inputEncryptedChat","params":[{"name":"chat_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedChat"},{"id":-1038136962,"predicate":"encryptedFileEmpty","params":[],"type":"EncryptedFile"},{"id":1248893260,"predicate":"encryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"EncryptedFile"},{"id":406307684,"predicate":"inputEncryptedFileEmpty","params":[],"type":"InputEncryptedFile"},{"id":1690108678,"predicate":"inputEncryptedFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":1511503333,"predicate":"inputEncryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedFile"},{"id":767652808,"predicate":"inputEncryptedFileBigUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":-317144808,"predicate":"encryptedMessage","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"},{"name":"file","type":"EncryptedFile"}],"type":"EncryptedMessage"},{"id":594758406,"predicate":"encryptedMessageService","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"}],"type":"EncryptedMessage"},{"id":-1058912715,"predicate":"messages.dhConfigNotModified","params":[{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":740433629,"predicate":"messages.dhConfig","params":[{"name":"g","type":"int"},{"name":"p","type":"bytes"},{"name":"version","type":"int"},{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":1443858741,"predicate":"messages.sentEncryptedMessage","params":[{"name":"date","type":"int"}],"type":"messages.SentEncryptedMessage"},{"id":-1802240206,"predicate":"messages.sentEncryptedFile","params":[{"name":"date","type":"int"},{"name":"file","type":"EncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":1928391342,"predicate":"inputDocumentEmpty","params":[],"type":"InputDocument"},{"id":448771445,"predicate":"inputDocument","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputDocument"},{"id":922273905,"predicate":"documentEmpty","params":[{"name":"id","type":"long"}],"type":"Document"},{"id":512177195,"predicate":"document","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"mime_type","type":"string"},{"name":"size","type":"int"},{"name":"thumbs","type":"flags.0?Vector"},{"name":"video_thumbs","type":"flags.1?Vector"},{"name":"dc_id","type":"int"},{"name":"attributes","type":"Vector"}],"type":"Document"},{"id":398898678,"predicate":"help.support","params":[{"name":"phone_number","type":"string"},{"name":"user","type":"User"}],"type":"help.Support"},{"id":-1613493288,"predicate":"notifyPeer","params":[{"name":"peer","type":"Peer"}],"type":"NotifyPeer"},{"id":-1261946036,"predicate":"notifyUsers","params":[],"type":"NotifyPeer"},{"id":-1073230141,"predicate":"notifyChats","params":[],"type":"NotifyPeer"},{"id":-703403793,"predicate":"notifyBroadcasts","params":[],"type":"NotifyPeer"},{"id":381645902,"predicate":"sendMessageTypingAction","params":[],"type":"SendMessageAction"},{"id":-44119819,"predicate":"sendMessageCancelAction","params":[],"type":"SendMessageAction"},{"id":-1584933265,"predicate":"sendMessageRecordVideoAction","params":[],"type":"SendMessageAction"},{"id":-378127636,"predicate":"sendMessageUploadVideoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-718310409,"predicate":"sendMessageRecordAudioAction","params":[],"type":"SendMessageAction"},{"id":-212740181,"predicate":"sendMessageUploadAudioAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-774682074,"predicate":"sendMessageUploadPhotoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-1441998364,"predicate":"sendMessageUploadDocumentAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":393186209,"predicate":"sendMessageGeoLocationAction","params":[],"type":"SendMessageAction"},{"id":1653390447,"predicate":"sendMessageChooseContactAction","params":[],"type":"SendMessageAction"},{"id":-580219064,"predicate":"sendMessageGamePlayAction","params":[],"type":"SendMessageAction"},{"id":-1997373508,"predicate":"sendMessageRecordRoundAction","params":[],"type":"SendMessageAction"},{"id":608050278,"predicate":"sendMessageUploadRoundAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-651419003,"predicate":"speakingInGroupCallAction","params":[],"type":"SendMessageAction"},{"id":-606432698,"predicate":"sendMessageHistoryImportAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-1336228175,"predicate":"sendMessageChooseStickerAction","params":[],"type":"SendMessageAction"},{"id":1781674934,"predicate":"sendMessageEmojiInteraction","params":[{"name":"emoticon","type":"string"},{"name":"interaction","type":"DataJSON"}],"type":"SendMessageAction"},{"id":-1234857938,"predicate":"sendMessageEmojiInteractionSeen","params":[{"name":"emoticon","type":"string"}],"type":"SendMessageAction"},{"id":-1290580579,"predicate":"contacts.found","params":[{"name":"my_results","type":"Vector"},{"name":"results","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Found"},{"id":1335282456,"predicate":"inputPrivacyKeyStatusTimestamp","params":[],"type":"InputPrivacyKey"},{"id":-1107622874,"predicate":"inputPrivacyKeyChatInvite","params":[],"type":"InputPrivacyKey"},{"id":-88417185,"predicate":"inputPrivacyKeyPhoneCall","params":[],"type":"InputPrivacyKey"},{"id":-610373422,"predicate":"inputPrivacyKeyPhoneP2P","params":[],"type":"InputPrivacyKey"},{"id":-1529000952,"predicate":"inputPrivacyKeyForwards","params":[],"type":"InputPrivacyKey"},{"id":1461304012,"predicate":"inputPrivacyKeyProfilePhoto","params":[],"type":"InputPrivacyKey"},{"id":55761658,"predicate":"inputPrivacyKeyPhoneNumber","params":[],"type":"InputPrivacyKey"},{"id":-786326563,"predicate":"inputPrivacyKeyAddedByPhone","params":[],"type":"InputPrivacyKey"},{"id":-1137792208,"predicate":"privacyKeyStatusTimestamp","params":[],"type":"PrivacyKey"},{"id":1343122938,"predicate":"privacyKeyChatInvite","params":[],"type":"PrivacyKey"},{"id":1030105979,"predicate":"privacyKeyPhoneCall","params":[],"type":"PrivacyKey"},{"id":961092808,"predicate":"privacyKeyPhoneP2P","params":[],"type":"PrivacyKey"},{"id":1777096355,"predicate":"privacyKeyForwards","params":[],"type":"PrivacyKey"},{"id":-1777000467,"predicate":"privacyKeyProfilePhoto","params":[],"type":"PrivacyKey"},{"id":-778378131,"predicate":"privacyKeyPhoneNumber","params":[],"type":"PrivacyKey"},{"id":1124062251,"predicate":"privacyKeyAddedByPhone","params":[],"type":"PrivacyKey"},{"id":218751099,"predicate":"inputPrivacyValueAllowContacts","params":[],"type":"InputPrivacyRule"},{"id":407582158,"predicate":"inputPrivacyValueAllowAll","params":[],"type":"InputPrivacyRule"},{"id":320652927,"predicate":"inputPrivacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":195371015,"predicate":"inputPrivacyValueDisallowContacts","params":[],"type":"InputPrivacyRule"},{"id":-697604407,"predicate":"inputPrivacyValueDisallowAll","params":[],"type":"InputPrivacyRule"},{"id":-1877932953,"predicate":"inputPrivacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-2079962673,"predicate":"inputPrivacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-380694650,"predicate":"inputPrivacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-123988,"predicate":"privacyValueAllowContacts","params":[],"type":"PrivacyRule"},{"id":1698855810,"predicate":"privacyValueAllowAll","params":[],"type":"PrivacyRule"},{"id":-1198497870,"predicate":"privacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":-125240806,"predicate":"privacyValueDisallowContacts","params":[],"type":"PrivacyRule"},{"id":-1955338397,"predicate":"privacyValueDisallowAll","params":[],"type":"PrivacyRule"},{"id":-463335103,"predicate":"privacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":1796427406,"predicate":"privacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":1103656293,"predicate":"privacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":1352683077,"predicate":"account.privacyRules","params":[{"name":"rules","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.PrivacyRules"},{"id":-1194283041,"predicate":"accountDaysTTL","params":[{"name":"days","type":"int"}],"type":"AccountDaysTTL"},{"id":1815593308,"predicate":"documentAttributeImageSize","params":[{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":297109817,"predicate":"documentAttributeAnimated","params":[],"type":"DocumentAttribute"},{"id":1662637586,"predicate":"documentAttributeSticker","params":[{"name":"flags","type":"#"},{"name":"mask","type":"flags.1?true"},{"name":"alt","type":"string"},{"name":"stickerset","type":"InputStickerSet"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"DocumentAttribute"},{"id":250621158,"predicate":"documentAttributeVideo","params":[{"name":"flags","type":"#"},{"name":"round_message","type":"flags.0?true"},{"name":"supports_streaming","type":"flags.1?true"},{"name":"duration","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":-1739392570,"predicate":"documentAttributeAudio","params":[{"name":"flags","type":"#"},{"name":"voice","type":"flags.10?true"},{"name":"duration","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"performer","type":"flags.1?string"},{"name":"waveform","type":"flags.2?bytes"}],"type":"DocumentAttribute"},{"id":358154344,"predicate":"documentAttributeFilename","params":[{"name":"file_name","type":"string"}],"type":"DocumentAttribute"},{"id":-1744710921,"predicate":"documentAttributeHasStickers","params":[],"type":"DocumentAttribute"},{"id":-244016606,"predicate":"messages.stickersNotModified","params":[],"type":"messages.Stickers"},{"id":816245886,"predicate":"messages.stickers","params":[{"name":"hash","type":"long"},{"name":"stickers","type":"Vector"}],"type":"messages.Stickers"},{"id":313694676,"predicate":"stickerPack","params":[{"name":"emoticon","type":"string"},{"name":"documents","type":"Vector"}],"type":"StickerPack"},{"id":-395967805,"predicate":"messages.allStickersNotModified","params":[],"type":"messages.AllStickers"},{"id":-843329861,"predicate":"messages.allStickers","params":[{"name":"hash","type":"long"},{"name":"sets","type":"Vector"}],"type":"messages.AllStickers"},{"id":-2066640507,"predicate":"messages.affectedMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"messages.AffectedMessages"},{"id":-350980120,"predicate":"webPageEmpty","params":[{"name":"id","type":"long"}],"type":"WebPage"},{"id":-981018084,"predicate":"webPagePending","params":[{"name":"id","type":"long"},{"name":"date","type":"int"}],"type":"WebPage"},{"id":-392411726,"predicate":"webPage","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"url","type":"string"},{"name":"display_url","type":"string"},{"name":"hash","type":"int"},{"name":"type","type":"flags.0?string"},{"name":"site_name","type":"flags.1?string"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"photo","type":"flags.4?Photo"},{"name":"embed_url","type":"flags.5?string"},{"name":"embed_type","type":"flags.5?string"},{"name":"embed_width","type":"flags.6?int"},{"name":"embed_height","type":"flags.6?int"},{"name":"duration","type":"flags.7?int"},{"name":"author","type":"flags.8?string"},{"name":"document","type":"flags.9?Document"},{"name":"cached_page","type":"flags.10?Page"},{"name":"attributes","type":"flags.12?Vector"}],"type":"WebPage"},{"id":1930545681,"predicate":"webPageNotModified","params":[{"name":"flags","type":"#"},{"name":"cached_page_views","type":"flags.0?int"}],"type":"WebPage"},{"id":-1392388579,"predicate":"authorization","params":[{"name":"flags","type":"#"},{"name":"current","type":"flags.0?true"},{"name":"official_app","type":"flags.1?true"},{"name":"password_pending","type":"flags.2?true"},{"name":"hash","type":"long"},{"name":"device_model","type":"string"},{"name":"platform","type":"string"},{"name":"system_version","type":"string"},{"name":"api_id","type":"int"},{"name":"app_name","type":"string"},{"name":"app_version","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"country","type":"string"},{"name":"region","type":"string"}],"type":"Authorization"},{"id":307276766,"predicate":"account.authorizations","params":[{"name":"authorizations","type":"Vector"}],"type":"account.Authorizations"},{"id":408623183,"predicate":"account.password","params":[{"name":"flags","type":"#"},{"name":"has_recovery","type":"flags.0?true"},{"name":"has_secure_values","type":"flags.1?true"},{"name":"has_password","type":"flags.2?true"},{"name":"current_algo","type":"flags.2?PasswordKdfAlgo"},{"name":"srp_B","type":"flags.2?bytes"},{"name":"srp_id","type":"flags.2?long"},{"name":"hint","type":"flags.3?string"},{"name":"email_unconfirmed_pattern","type":"flags.4?string"},{"name":"new_algo","type":"PasswordKdfAlgo"},{"name":"new_secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_random","type":"bytes"},{"name":"pending_reset_date","type":"flags.5?int"}],"type":"account.Password"},{"id":-1705233435,"predicate":"account.passwordSettings","params":[{"name":"flags","type":"#"},{"name":"email","type":"flags.0?string"},{"name":"secure_settings","type":"flags.1?SecureSecretSettings"}],"type":"account.PasswordSettings"},{"id":-1036572727,"predicate":"account.passwordInputSettings","params":[{"name":"flags","type":"#"},{"name":"new_algo","type":"flags.0?PasswordKdfAlgo"},{"name":"new_password_hash","type":"flags.0?bytes"},{"name":"hint","type":"flags.0?string"},{"name":"email","type":"flags.1?string"},{"name":"new_secure_settings","type":"flags.2?SecureSecretSettings"}],"type":"account.PasswordInputSettings"},{"id":326715557,"predicate":"auth.passwordRecovery","params":[{"name":"email_pattern","type":"string"}],"type":"auth.PasswordRecovery"},{"id":-1551583367,"predicate":"receivedNotifyMessage","params":[{"name":"id","type":"int"},{"name":"flags","type":"int"}],"type":"ReceivedNotifyMessage"},{"id":-1316944408,"predicate":"chatInviteExported","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.0?true"},{"name":"permanent","type":"flags.5?true"},{"name":"link","type":"string"},{"name":"admin_id","type":"long"},{"name":"date","type":"int"},{"name":"start_date","type":"flags.4?int"},{"name":"expire_date","type":"flags.1?int"},{"name":"usage_limit","type":"flags.2?int"},{"name":"usage","type":"flags.3?int"}],"type":"ExportedChatInvite"},{"id":1516793212,"predicate":"chatInviteAlready","params":[{"name":"chat","type":"Chat"}],"type":"ChatInvite"},{"id":-540871282,"predicate":"chatInvite","params":[{"name":"flags","type":"#"},{"name":"channel","type":"flags.0?true"},{"name":"broadcast","type":"flags.1?true"},{"name":"public","type":"flags.2?true"},{"name":"megagroup","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"photo","type":"Photo"},{"name":"participants_count","type":"int"},{"name":"participants","type":"flags.4?Vector"}],"type":"ChatInvite"},{"id":1634294960,"predicate":"chatInvitePeek","params":[{"name":"chat","type":"Chat"},{"name":"expires","type":"int"}],"type":"ChatInvite"},{"id":-4838507,"predicate":"inputStickerSetEmpty","params":[],"type":"InputStickerSet"},{"id":-1645763991,"predicate":"inputStickerSetID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputStickerSet"},{"id":-2044933984,"predicate":"inputStickerSetShortName","params":[{"name":"short_name","type":"string"}],"type":"InputStickerSet"},{"id":42402760,"predicate":"inputStickerSetAnimatedEmoji","params":[],"type":"InputStickerSet"},{"id":-427863538,"predicate":"inputStickerSetDice","params":[{"name":"emoticon","type":"string"}],"type":"InputStickerSet"},{"id":-673242758,"predicate":"stickerSet","params":[{"name":"flags","type":"#"},{"name":"archived","type":"flags.1?true"},{"name":"official","type":"flags.2?true"},{"name":"masks","type":"flags.3?true"},{"name":"animated","type":"flags.5?true"},{"name":"installed_date","type":"flags.0?int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumbs","type":"flags.4?Vector"},{"name":"thumb_dc_id","type":"flags.4?int"},{"name":"thumb_version","type":"flags.4?int"},{"name":"count","type":"int"},{"name":"hash","type":"int"}],"type":"StickerSet"},{"id":-1240849242,"predicate":"messages.stickerSet","params":[{"name":"set","type":"StickerSet"},{"name":"packs","type":"Vector"},{"name":"documents","type":"Vector"}],"type":"messages.StickerSet"},{"id":-1032140601,"predicate":"botCommand","params":[{"name":"command","type":"string"},{"name":"description","type":"string"}],"type":"BotCommand"},{"id":460632885,"predicate":"botInfo","params":[{"name":"user_id","type":"long"},{"name":"description","type":"string"},{"name":"commands","type":"Vector"}],"type":"BotInfo"},{"id":-1560655744,"predicate":"keyboardButton","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":629866245,"predicate":"keyboardButtonUrl","params":[{"name":"text","type":"string"},{"name":"url","type":"string"}],"type":"KeyboardButton"},{"id":901503851,"predicate":"keyboardButtonCallback","params":[{"name":"flags","type":"#"},{"name":"requires_password","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"data","type":"bytes"}],"type":"KeyboardButton"},{"id":-1318425559,"predicate":"keyboardButtonRequestPhone","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-59151553,"predicate":"keyboardButtonRequestGeoLocation","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":90744648,"predicate":"keyboardButtonSwitchInline","params":[{"name":"flags","type":"#"},{"name":"same_peer","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"query","type":"string"}],"type":"KeyboardButton"},{"id":1358175439,"predicate":"keyboardButtonGame","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-1344716869,"predicate":"keyboardButtonBuy","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":280464681,"predicate":"keyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.0?string"},{"name":"url","type":"string"},{"name":"button_id","type":"int"}],"type":"KeyboardButton"},{"id":-802258988,"predicate":"inputKeyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.1?string"},{"name":"url","type":"string"},{"name":"bot","type":"InputUser"}],"type":"KeyboardButton"},{"id":-1144565411,"predicate":"keyboardButtonRequestPoll","params":[{"name":"flags","type":"#"},{"name":"quiz","type":"flags.0?Bool"},{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":2002815875,"predicate":"keyboardButtonRow","params":[{"name":"buttons","type":"Vector"}],"type":"KeyboardButtonRow"},{"id":-1606526075,"predicate":"replyKeyboardHide","params":[{"name":"flags","type":"#"},{"name":"selective","type":"flags.2?true"}],"type":"ReplyMarkup"},{"id":-2035021048,"predicate":"replyKeyboardForceReply","params":[{"name":"flags","type":"#"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":-2049074735,"predicate":"replyKeyboardMarkup","params":[{"name":"flags","type":"#"},{"name":"resize","type":"flags.0?true"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"rows","type":"Vector"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":1218642516,"predicate":"replyInlineMarkup","params":[{"name":"rows","type":"Vector"}],"type":"ReplyMarkup"},{"id":-1148011883,"predicate":"messageEntityUnknown","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-100378723,"predicate":"messageEntityMention","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1868782349,"predicate":"messageEntityHashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1827637959,"predicate":"messageEntityBotCommand","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1859134776,"predicate":"messageEntityUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1692693954,"predicate":"messageEntityEmail","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1117713463,"predicate":"messageEntityBold","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-2106619040,"predicate":"messageEntityItalic","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":681706865,"predicate":"messageEntityCode","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1938967520,"predicate":"messageEntityPre","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"language","type":"string"}],"type":"MessageEntity"},{"id":1990644519,"predicate":"messageEntityTextUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"url","type":"string"}],"type":"MessageEntity"},{"id":-595914432,"predicate":"messageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"long"}],"type":"MessageEntity"},{"id":546203849,"predicate":"inputMessageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"MessageEntity"},{"id":-1687559349,"predicate":"messageEntityPhone","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1280209983,"predicate":"messageEntityCashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1672577397,"predicate":"messageEntityUnderline","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1090087980,"predicate":"messageEntityStrike","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":34469328,"predicate":"messageEntityBlockquote","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1981704948,"predicate":"messageEntityBankCard","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-292807034,"predicate":"inputChannelEmpty","params":[],"type":"InputChannel"},{"id":-212145112,"predicate":"inputChannel","params":[{"name":"channel_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputChannel"},{"id":1536380829,"predicate":"inputChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"long"}],"type":"InputChannel"},{"id":2131196633,"predicate":"contacts.resolvedPeer","params":[{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ResolvedPeer"},{"id":182649427,"predicate":"messageRange","params":[{"name":"min_id","type":"int"},{"name":"max_id","type":"int"}],"type":"MessageRange"},{"id":1041346555,"predicate":"updates.channelDifferenceEmpty","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"}],"type":"updates.ChannelDifference"},{"id":-1531132162,"predicate":"updates.channelDifferenceTooLong","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"timeout","type":"flags.1?int"},{"name":"dialog","type":"Dialog"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":543450958,"predicate":"updates.channelDifference","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"},{"name":"new_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":-1798033689,"predicate":"channelMessagesFilterEmpty","params":[],"type":"ChannelMessagesFilter"},{"id":-847783593,"predicate":"channelMessagesFilter","params":[{"name":"flags","type":"#"},{"name":"exclude_new_messages","type":"flags.1?true"},{"name":"ranges","type":"Vector"}],"type":"ChannelMessagesFilter"},{"id":-1072953408,"predicate":"channelParticipant","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":682146919,"predicate":"channelParticipantSelf","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":803602899,"predicate":"channelParticipantCreator","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"long"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.0?string"}],"type":"ChannelParticipant"},{"id":885242707,"predicate":"channelParticipantAdmin","params":[{"name":"flags","type":"#"},{"name":"can_edit","type":"flags.0?true"},{"name":"self","type":"flags.1?true"},{"name":"user_id","type":"long"},{"name":"inviter_id","type":"flags.1?long"},{"name":"promoted_by","type":"long"},{"name":"date","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.2?string"}],"type":"ChannelParticipant"},{"id":1844969806,"predicate":"channelParticipantBanned","params":[{"name":"flags","type":"#"},{"name":"left","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"kicked_by","type":"long"},{"name":"date","type":"int"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"ChannelParticipant"},{"id":453242886,"predicate":"channelParticipantLeft","params":[{"name":"peer","type":"Peer"}],"type":"ChannelParticipant"},{"id":-566281095,"predicate":"channelParticipantsRecent","params":[],"type":"ChannelParticipantsFilter"},{"id":-1268741783,"predicate":"channelParticipantsAdmins","params":[],"type":"ChannelParticipantsFilter"},{"id":-1548400251,"predicate":"channelParticipantsKicked","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-1328445861,"predicate":"channelParticipantsBots","params":[],"type":"ChannelParticipantsFilter"},{"id":338142689,"predicate":"channelParticipantsBanned","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":106343499,"predicate":"channelParticipantsSearch","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-1150621555,"predicate":"channelParticipantsContacts","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-531931925,"predicate":"channelParticipantsMentions","params":[{"name":"flags","type":"#"},{"name":"q","type":"flags.0?string"},{"name":"top_msg_id","type":"flags.1?int"}],"type":"ChannelParticipantsFilter"},{"id":-1699676497,"predicate":"channels.channelParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipants"},{"id":-266911767,"predicate":"channels.channelParticipantsNotModified","params":[],"type":"channels.ChannelParticipants"},{"id":-541588713,"predicate":"channels.channelParticipant","params":[{"name":"participant","type":"ChannelParticipant"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipant"},{"id":2013922064,"predicate":"help.termsOfService","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"id","type":"DataJSON"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"min_age_confirm","type":"flags.1?int"}],"type":"help.TermsOfService"},{"id":-402498398,"predicate":"messages.savedGifsNotModified","params":[],"type":"messages.SavedGifs"},{"id":-2069878259,"predicate":"messages.savedGifs","params":[{"name":"hash","type":"long"},{"name":"gifs","type":"Vector"}],"type":"messages.SavedGifs"},{"id":864077702,"predicate":"inputBotInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1036876423,"predicate":"inputBotInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-1768777083,"predicate":"inputBotInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1098628881,"predicate":"inputBotInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-1494368259,"predicate":"inputBotInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1262639204,"predicate":"inputBotInlineMessageGame","params":[{"name":"flags","type":"#"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-672693723,"predicate":"inputBotInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-2000710887,"predicate":"inputBotInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?InputWebDocument"},{"name":"content","type":"flags.5?InputWebDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":-1462213465,"predicate":"inputBotInlineResultPhoto","params":[{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"InputPhoto"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":-459324,"predicate":"inputBotInlineResultDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"document","type":"InputDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1336154098,"predicate":"inputBotInlineResultGame","params":[{"name":"id","type":"string"},{"name":"short_name","type":"string"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1984755728,"predicate":"botInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1937807902,"predicate":"botInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":85477117,"predicate":"botInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1970903652,"predicate":"botInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":416402882,"predicate":"botInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":894081801,"predicate":"botInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":295067450,"predicate":"botInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?WebDocument"},{"name":"content","type":"flags.5?WebDocument"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":400266251,"predicate":"botInlineMediaResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"flags.0?Photo"},{"name":"document","type":"flags.1?Document"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":-1803769784,"predicate":"messages.botResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"query_id","type":"long"},{"name":"next_offset","type":"flags.1?string"},{"name":"switch_pm","type":"flags.2?InlineBotSwitchPM"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"users","type":"Vector"}],"type":"messages.BotResults"},{"id":1571494644,"predicate":"exportedMessageLink","params":[{"name":"link","type":"string"},{"name":"html","type":"string"}],"type":"ExportedMessageLink"},{"id":1601666510,"predicate":"messageFwdHeader","params":[{"name":"flags","type":"#"},{"name":"imported","type":"flags.7?true"},{"name":"from_id","type":"flags.0?Peer"},{"name":"from_name","type":"flags.5?string"},{"name":"date","type":"int"},{"name":"channel_post","type":"flags.2?int"},{"name":"post_author","type":"flags.3?string"},{"name":"saved_from_peer","type":"flags.4?Peer"},{"name":"saved_from_msg_id","type":"flags.4?int"},{"name":"psa_type","type":"flags.6?string"}],"type":"MessageFwdHeader"},{"id":1923290508,"predicate":"auth.codeTypeSms","params":[],"type":"auth.CodeType"},{"id":1948046307,"predicate":"auth.codeTypeCall","params":[],"type":"auth.CodeType"},{"id":577556219,"predicate":"auth.codeTypeFlashCall","params":[],"type":"auth.CodeType"},{"id":1035688326,"predicate":"auth.sentCodeTypeApp","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1073693790,"predicate":"auth.sentCodeTypeSms","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":1398007207,"predicate":"auth.sentCodeTypeCall","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1425815847,"predicate":"auth.sentCodeTypeFlashCall","params":[{"name":"pattern","type":"string"}],"type":"auth.SentCodeType"},{"id":911761060,"predicate":"messages.botCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"has_url","type":"flags.3?true"},{"name":"native_ui","type":"flags.4?true"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"messages.BotCallbackAnswer"},{"id":649453030,"predicate":"messages.messageEditData","params":[{"name":"flags","type":"#"},{"name":"caption","type":"flags.0?true"}],"type":"messages.MessageEditData"},{"id":-1995686519,"predicate":"inputBotInlineMessageID","params":[{"name":"dc_id","type":"int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":-1227287081,"predicate":"inputBotInlineMessageID64","params":[{"name":"dc_id","type":"int"},{"name":"owner_id","type":"long"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":1008755359,"predicate":"inlineBotSwitchPM","params":[{"name":"text","type":"string"},{"name":"start_param","type":"string"}],"type":"InlineBotSwitchPM"},{"id":863093588,"predicate":"messages.peerDialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"messages.PeerDialogs"},{"id":-305282981,"predicate":"topPeer","params":[{"name":"peer","type":"Peer"},{"name":"rating","type":"double"}],"type":"TopPeer"},{"id":-1419371685,"predicate":"topPeerCategoryBotsPM","params":[],"type":"TopPeerCategory"},{"id":344356834,"predicate":"topPeerCategoryBotsInline","params":[],"type":"TopPeerCategory"},{"id":104314861,"predicate":"topPeerCategoryCorrespondents","params":[],"type":"TopPeerCategory"},{"id":-1122524854,"predicate":"topPeerCategoryGroups","params":[],"type":"TopPeerCategory"},{"id":371037736,"predicate":"topPeerCategoryChannels","params":[],"type":"TopPeerCategory"},{"id":511092620,"predicate":"topPeerCategoryPhoneCalls","params":[],"type":"TopPeerCategory"},{"id":-1472172887,"predicate":"topPeerCategoryForwardUsers","params":[],"type":"TopPeerCategory"},{"id":-68239120,"predicate":"topPeerCategoryForwardChats","params":[],"type":"TopPeerCategory"},{"id":-75283823,"predicate":"topPeerCategoryPeers","params":[{"name":"category","type":"TopPeerCategory"},{"name":"count","type":"int"},{"name":"peers","type":"Vector"}],"type":"TopPeerCategoryPeers"},{"id":-567906571,"predicate":"contacts.topPeersNotModified","params":[],"type":"contacts.TopPeers"},{"id":1891070632,"predicate":"contacts.topPeers","params":[{"name":"categories","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.TopPeers"},{"id":-1255369827,"predicate":"contacts.topPeersDisabled","params":[],"type":"contacts.TopPeers"},{"id":453805082,"predicate":"draftMessageEmpty","params":[{"name":"flags","type":"#"},{"name":"date","type":"flags.0?int"}],"type":"DraftMessage"},{"id":-40996577,"predicate":"draftMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"},{"name":"date","type":"int"}],"type":"DraftMessage"},{"id":-958657434,"predicate":"messages.featuredStickersNotModified","params":[{"name":"count","type":"int"}],"type":"messages.FeaturedStickers"},{"id":-2067782896,"predicate":"messages.featuredStickers","params":[{"name":"hash","type":"long"},{"name":"count","type":"int"},{"name":"sets","type":"Vector"},{"name":"unread","type":"Vector"}],"type":"messages.FeaturedStickers"},{"id":186120336,"predicate":"messages.recentStickersNotModified","params":[],"type":"messages.RecentStickers"},{"id":-1999405994,"predicate":"messages.recentStickers","params":[{"name":"hash","type":"long"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"},{"name":"dates","type":"Vector"}],"type":"messages.RecentStickers"},{"id":1338747336,"predicate":"messages.archivedStickers","params":[{"name":"count","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.ArchivedStickers"},{"id":946083368,"predicate":"messages.stickerSetInstallResultSuccess","params":[],"type":"messages.StickerSetInstallResult"},{"id":904138920,"predicate":"messages.stickerSetInstallResultArchive","params":[{"name":"sets","type":"Vector"}],"type":"messages.StickerSetInstallResult"},{"id":1678812626,"predicate":"stickerSetCovered","params":[{"name":"set","type":"StickerSet"},{"name":"cover","type":"Document"}],"type":"StickerSetCovered"},{"id":872932635,"predicate":"stickerSetMultiCovered","params":[{"name":"set","type":"StickerSet"},{"name":"covers","type":"Vector"}],"type":"StickerSetCovered"},{"id":-1361650766,"predicate":"maskCoords","params":[{"name":"n","type":"int"},{"name":"x","type":"double"},{"name":"y","type":"double"},{"name":"zoom","type":"double"}],"type":"MaskCoords"},{"id":1251549527,"predicate":"inputStickeredMediaPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputStickeredMedia"},{"id":70813275,"predicate":"inputStickeredMediaDocument","params":[{"name":"id","type":"InputDocument"}],"type":"InputStickeredMedia"},{"id":-1107729093,"predicate":"game","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"short_name","type":"string"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"Photo"},{"name":"document","type":"flags.0?Document"}],"type":"Game"},{"id":53231223,"predicate":"inputGameID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGame"},{"id":-1020139510,"predicate":"inputGameShortName","params":[{"name":"bot_id","type":"InputUser"},{"name":"short_name","type":"string"}],"type":"InputGame"},{"id":1940093419,"predicate":"highScore","params":[{"name":"pos","type":"int"},{"name":"user_id","type":"long"},{"name":"score","type":"int"}],"type":"HighScore"},{"id":-1707344487,"predicate":"messages.highScores","params":[{"name":"scores","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.HighScores"},{"id":-599948721,"predicate":"textEmpty","params":[],"type":"RichText"},{"id":1950782688,"predicate":"textPlain","params":[{"name":"text","type":"string"}],"type":"RichText"},{"id":1730456516,"predicate":"textBold","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-653089380,"predicate":"textItalic","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1054465340,"predicate":"textUnderline","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1678197867,"predicate":"textStrike","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1816074681,"predicate":"textFixed","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1009288385,"predicate":"textUrl","params":[{"name":"text","type":"RichText"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"}],"type":"RichText"},{"id":-564523562,"predicate":"textEmail","params":[{"name":"text","type":"RichText"},{"name":"email","type":"string"}],"type":"RichText"},{"id":2120376535,"predicate":"textConcat","params":[{"name":"texts","type":"Vector"}],"type":"RichText"},{"id":-311786236,"predicate":"textSubscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-939827711,"predicate":"textSuperscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":55281185,"predicate":"textMarked","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":483104362,"predicate":"textPhone","params":[{"name":"text","type":"RichText"},{"name":"phone","type":"string"}],"type":"RichText"},{"id":136105807,"predicate":"textImage","params":[{"name":"document_id","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"RichText"},{"id":894777186,"predicate":"textAnchor","params":[{"name":"text","type":"RichText"},{"name":"name","type":"string"}],"type":"RichText"},{"id":324435594,"predicate":"pageBlockUnsupported","params":[],"type":"PageBlock"},{"id":1890305021,"predicate":"pageBlockTitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1879401953,"predicate":"pageBlockSubtitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1162877472,"predicate":"pageBlockAuthorDate","params":[{"name":"author","type":"RichText"},{"name":"published_date","type":"int"}],"type":"PageBlock"},{"id":-1076861716,"predicate":"pageBlockHeader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-248793375,"predicate":"pageBlockSubheader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":1182402406,"predicate":"pageBlockParagraph","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1066346178,"predicate":"pageBlockPreformatted","params":[{"name":"text","type":"RichText"},{"name":"language","type":"string"}],"type":"PageBlock"},{"id":1216809369,"predicate":"pageBlockFooter","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-618614392,"predicate":"pageBlockDivider","params":[],"type":"PageBlock"},{"id":-837994576,"predicate":"pageBlockAnchor","params":[{"name":"name","type":"string"}],"type":"PageBlock"},{"id":-454524911,"predicate":"pageBlockList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":641563686,"predicate":"pageBlockBlockquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":1329878739,"predicate":"pageBlockPullquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":391759200,"predicate":"pageBlockPhoto","params":[{"name":"flags","type":"#"},{"name":"photo_id","type":"long"},{"name":"caption","type":"PageCaption"},{"name":"url","type":"flags.0?string"},{"name":"webpage_id","type":"flags.0?long"}],"type":"PageBlock"},{"id":2089805750,"predicate":"pageBlockVideo","params":[{"name":"flags","type":"#"},{"name":"autoplay","type":"flags.0?true"},{"name":"loop","type":"flags.1?true"},{"name":"video_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":972174080,"predicate":"pageBlockCover","params":[{"name":"cover","type":"PageBlock"}],"type":"PageBlock"},{"id":-1468953147,"predicate":"pageBlockEmbed","params":[{"name":"flags","type":"#"},{"name":"full_width","type":"flags.0?true"},{"name":"allow_scrolling","type":"flags.3?true"},{"name":"url","type":"flags.1?string"},{"name":"html","type":"flags.2?string"},{"name":"poster_photo_id","type":"flags.4?long"},{"name":"w","type":"flags.5?int"},{"name":"h","type":"flags.5?int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-229005301,"predicate":"pageBlockEmbedPost","params":[{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"author_photo_id","type":"long"},{"name":"author","type":"string"},{"name":"date","type":"int"},{"name":"blocks","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1705048653,"predicate":"pageBlockCollage","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":52401552,"predicate":"pageBlockSlideshow","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-283684427,"predicate":"pageBlockChannel","params":[{"name":"channel","type":"Chat"}],"type":"PageBlock"},{"id":-2143067670,"predicate":"pageBlockAudio","params":[{"name":"audio_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":504660880,"predicate":"pageBlockKicker","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1085412734,"predicate":"pageBlockTable","params":[{"name":"flags","type":"#"},{"name":"bordered","type":"flags.0?true"},{"name":"striped","type":"flags.1?true"},{"name":"title","type":"RichText"},{"name":"rows","type":"Vector"}],"type":"PageBlock"},{"id":-1702174239,"predicate":"pageBlockOrderedList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":1987480557,"predicate":"pageBlockDetails","params":[{"name":"flags","type":"#"},{"name":"open","type":"flags.0?true"},{"name":"blocks","type":"Vector"},{"name":"title","type":"RichText"}],"type":"PageBlock"},{"id":370236054,"predicate":"pageBlockRelatedArticles","params":[{"name":"title","type":"RichText"},{"name":"articles","type":"Vector"}],"type":"PageBlock"},{"id":-1538310410,"predicate":"pageBlockMap","params":[{"name":"geo","type":"GeoPoint"},{"name":"zoom","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-2048646399,"predicate":"phoneCallDiscardReasonMissed","params":[],"type":"PhoneCallDiscardReason"},{"id":-527056480,"predicate":"phoneCallDiscardReasonDisconnect","params":[],"type":"PhoneCallDiscardReason"},{"id":1471006352,"predicate":"phoneCallDiscardReasonHangup","params":[],"type":"PhoneCallDiscardReason"},{"id":-84416311,"predicate":"phoneCallDiscardReasonBusy","params":[],"type":"PhoneCallDiscardReason"},{"id":2104790276,"predicate":"dataJSON","params":[{"name":"data","type":"string"}],"type":"DataJSON"},{"id":-886477832,"predicate":"labeledPrice","params":[{"name":"label","type":"string"},{"name":"amount","type":"long"}],"type":"LabeledPrice"},{"id":215516896,"predicate":"invoice","params":[{"name":"flags","type":"#"},{"name":"test","type":"flags.0?true"},{"name":"name_requested","type":"flags.1?true"},{"name":"phone_requested","type":"flags.2?true"},{"name":"email_requested","type":"flags.3?true"},{"name":"shipping_address_requested","type":"flags.4?true"},{"name":"flexible","type":"flags.5?true"},{"name":"phone_to_provider","type":"flags.6?true"},{"name":"email_to_provider","type":"flags.7?true"},{"name":"currency","type":"string"},{"name":"prices","type":"Vector"},{"name":"max_tip_amount","type":"flags.8?long"},{"name":"suggested_tip_amounts","type":"flags.8?Vector"}],"type":"Invoice"},{"id":-368917890,"predicate":"paymentCharge","params":[{"name":"id","type":"string"},{"name":"provider_charge_id","type":"string"}],"type":"PaymentCharge"},{"id":512535275,"predicate":"postAddress","params":[{"name":"street_line1","type":"string"},{"name":"street_line2","type":"string"},{"name":"city","type":"string"},{"name":"state","type":"string"},{"name":"country_iso2","type":"string"},{"name":"post_code","type":"string"}],"type":"PostAddress"},{"id":-1868808300,"predicate":"paymentRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"name","type":"flags.0?string"},{"name":"phone","type":"flags.1?string"},{"name":"email","type":"flags.2?string"},{"name":"shipping_address","type":"flags.3?PostAddress"}],"type":"PaymentRequestedInfo"},{"id":-842892769,"predicate":"paymentSavedCredentialsCard","params":[{"name":"id","type":"string"},{"name":"title","type":"string"}],"type":"PaymentSavedCredentials"},{"id":475467473,"predicate":"webDocument","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":-104284986,"predicate":"webDocumentNoProxy","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":-1678949555,"predicate":"inputWebDocument","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"InputWebDocument"},{"id":-1036396922,"predicate":"inputWebFileLocation","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"}],"type":"InputWebFileLocation"},{"id":-1625153079,"predicate":"inputWebFileGeoPointLocation","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"access_hash","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"zoom","type":"int"},{"name":"scale","type":"int"}],"type":"InputWebFileLocation"},{"id":568808380,"predicate":"upload.webFile","params":[{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"file_type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.WebFile"},{"id":378828315,"predicate":"payments.paymentForm","params":[{"name":"flags","type":"#"},{"name":"can_save_credentials","type":"flags.2?true"},{"name":"password_missing","type":"flags.3?true"},{"name":"form_id","type":"long"},{"name":"bot_id","type":"long"},{"name":"invoice","type":"Invoice"},{"name":"provider_id","type":"long"},{"name":"url","type":"string"},{"name":"native_provider","type":"flags.4?string"},{"name":"native_params","type":"flags.4?DataJSON"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"},{"name":"saved_credentials","type":"flags.1?PaymentSavedCredentials"},{"name":"users","type":"Vector"}],"type":"payments.PaymentForm"},{"id":-784000893,"predicate":"payments.validatedRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"id","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"payments.ValidatedRequestedInfo"},{"id":1314881805,"predicate":"payments.paymentResult","params":[{"name":"updates","type":"Updates"}],"type":"payments.PaymentResult"},{"id":-666824391,"predicate":"payments.paymentVerificationNeeded","params":[{"name":"url","type":"string"}],"type":"payments.PaymentResult"},{"id":1891958275,"predicate":"payments.paymentReceipt","params":[{"name":"flags","type":"#"},{"name":"date","type":"int"},{"name":"bot_id","type":"long"},{"name":"provider_id","type":"long"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.2?WebDocument"},{"name":"invoice","type":"Invoice"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping","type":"flags.1?ShippingOption"},{"name":"tip_amount","type":"flags.3?long"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"credentials_title","type":"string"},{"name":"users","type":"Vector"}],"type":"payments.PaymentReceipt"},{"id":-74456004,"predicate":"payments.savedInfo","params":[{"name":"flags","type":"#"},{"name":"has_saved_credentials","type":"flags.1?true"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"}],"type":"payments.SavedInfo"},{"id":-1056001329,"predicate":"inputPaymentCredentialsSaved","params":[{"name":"id","type":"string"},{"name":"tmp_password","type":"bytes"}],"type":"InputPaymentCredentials"},{"id":873977640,"predicate":"inputPaymentCredentials","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":178373535,"predicate":"inputPaymentCredentialsApplePay","params":[{"name":"payment_data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-1966921727,"predicate":"inputPaymentCredentialsGooglePay","params":[{"name":"payment_token","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-614138572,"predicate":"account.tmpPassword","params":[{"name":"tmp_password","type":"bytes"},{"name":"valid_until","type":"int"}],"type":"account.TmpPassword"},{"id":-1239335713,"predicate":"shippingOption","params":[{"name":"id","type":"string"},{"name":"title","type":"string"},{"name":"prices","type":"Vector"}],"type":"ShippingOption"},{"id":-6249322,"predicate":"inputStickerSetItem","params":[{"name":"flags","type":"#"},{"name":"document","type":"InputDocument"},{"name":"emoji","type":"string"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"InputStickerSetItem"},{"id":506920429,"predicate":"inputPhoneCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPhoneCall"},{"id":1399245077,"predicate":"phoneCallEmpty","params":[{"name":"id","type":"long"}],"type":"PhoneCall"},{"id":-987599081,"predicate":"phoneCallWaiting","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"receive_date","type":"flags.0?int"}],"type":"PhoneCall"},{"id":347139340,"predicate":"phoneCallRequested","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":912311057,"predicate":"phoneCallAccepted","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":-1770029977,"predicate":"phoneCall","params":[{"name":"flags","type":"#"},{"name":"p2p_allowed","type":"flags.5?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"connections","type":"Vector"},{"name":"start_date","type":"int"}],"type":"PhoneCall"},{"id":1355435489,"predicate":"phoneCallDiscarded","params":[{"name":"flags","type":"#"},{"name":"need_rating","type":"flags.2?true"},{"name":"need_debug","type":"flags.3?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"PhoneCall"},{"id":-1655957568,"predicate":"phoneConnection","params":[{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"peer_tag","type":"bytes"}],"type":"PhoneConnection"},{"id":1667228533,"predicate":"phoneConnectionWebrtc","params":[{"name":"flags","type":"#"},{"name":"turn","type":"flags.0?true"},{"name":"stun","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"username","type":"string"},{"name":"password","type":"string"}],"type":"PhoneConnection"},{"id":-58224696,"predicate":"phoneCallProtocol","params":[{"name":"flags","type":"#"},{"name":"udp_p2p","type":"flags.0?true"},{"name":"udp_reflector","type":"flags.1?true"},{"name":"min_layer","type":"int"},{"name":"max_layer","type":"int"},{"name":"library_versions","type":"Vector"}],"type":"PhoneCallProtocol"},{"id":-326966976,"predicate":"phone.phoneCall","params":[{"name":"phone_call","type":"PhoneCall"},{"name":"users","type":"Vector"}],"type":"phone.PhoneCall"},{"id":-290921362,"predicate":"upload.cdnFileReuploadNeeded","params":[{"name":"request_token","type":"bytes"}],"type":"upload.CdnFile"},{"id":-1449145777,"predicate":"upload.cdnFile","params":[{"name":"bytes","type":"bytes"}],"type":"upload.CdnFile"},{"id":-914167110,"predicate":"cdnPublicKey","params":[{"name":"dc_id","type":"int"},{"name":"public_key","type":"string"}],"type":"CdnPublicKey"},{"id":1462101002,"predicate":"cdnConfig","params":[{"name":"public_keys","type":"Vector"}],"type":"CdnConfig"},{"id":-892239370,"predicate":"langPackString","params":[{"name":"key","type":"string"},{"name":"value","type":"string"}],"type":"LangPackString"},{"id":1816636575,"predicate":"langPackStringPluralized","params":[{"name":"flags","type":"#"},{"name":"key","type":"string"},{"name":"zero_value","type":"flags.0?string"},{"name":"one_value","type":"flags.1?string"},{"name":"two_value","type":"flags.2?string"},{"name":"few_value","type":"flags.3?string"},{"name":"many_value","type":"flags.4?string"},{"name":"other_value","type":"string"}],"type":"LangPackString"},{"id":695856818,"predicate":"langPackStringDeleted","params":[{"name":"key","type":"string"}],"type":"LangPackString"},{"id":-209337866,"predicate":"langPackDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"strings","type":"Vector"}],"type":"LangPackDifference"},{"id":-288727837,"predicate":"langPackLanguage","params":[{"name":"flags","type":"#"},{"name":"official","type":"flags.0?true"},{"name":"rtl","type":"flags.2?true"},{"name":"beta","type":"flags.3?true"},{"name":"name","type":"string"},{"name":"native_name","type":"string"},{"name":"lang_code","type":"string"},{"name":"base_lang_code","type":"flags.1?string"},{"name":"plural_code","type":"string"},{"name":"strings_count","type":"int"},{"name":"translated_count","type":"int"},{"name":"translations_url","type":"string"}],"type":"LangPackLanguage"},{"id":-421545947,"predicate":"channelAdminLogEventActionChangeTitle","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1427671598,"predicate":"channelAdminLogEventActionChangeAbout","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1783299128,"predicate":"channelAdminLogEventActionChangeUsername","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1129042607,"predicate":"channelAdminLogEventActionChangePhoto","params":[{"name":"prev_photo","type":"Photo"},{"name":"new_photo","type":"Photo"}],"type":"ChannelAdminLogEventAction"},{"id":460916654,"predicate":"channelAdminLogEventActionToggleInvites","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":648939889,"predicate":"channelAdminLogEventActionToggleSignatures","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-370660328,"predicate":"channelAdminLogEventActionUpdatePinned","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1889215493,"predicate":"channelAdminLogEventActionEditMessage","params":[{"name":"prev_message","type":"Message"},{"name":"new_message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1121994683,"predicate":"channelAdminLogEventActionDeleteMessage","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":405815507,"predicate":"channelAdminLogEventActionParticipantJoin","params":[],"type":"ChannelAdminLogEventAction"},{"id":-124291086,"predicate":"channelAdminLogEventActionParticipantLeave","params":[],"type":"ChannelAdminLogEventAction"},{"id":-484690728,"predicate":"channelAdminLogEventActionParticipantInvite","params":[{"name":"participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-422036098,"predicate":"channelAdminLogEventActionParticipantToggleBan","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-714643696,"predicate":"channelAdminLogEventActionParticipantToggleAdmin","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-1312568665,"predicate":"channelAdminLogEventActionChangeStickerSet","params":[{"name":"prev_stickerset","type":"InputStickerSet"},{"name":"new_stickerset","type":"InputStickerSet"}],"type":"ChannelAdminLogEventAction"},{"id":1599903217,"predicate":"channelAdminLogEventActionTogglePreHistoryHidden","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":771095562,"predicate":"channelAdminLogEventActionDefaultBannedRights","params":[{"name":"prev_banned_rights","type":"ChatBannedRights"},{"name":"new_banned_rights","type":"ChatBannedRights"}],"type":"ChannelAdminLogEventAction"},{"id":-1895328189,"predicate":"channelAdminLogEventActionStopPoll","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":84703944,"predicate":"channelAdminLogEventActionChangeLinkedChat","params":[{"name":"prev_value","type":"long"},{"name":"new_value","type":"long"}],"type":"ChannelAdminLogEventAction"},{"id":241923758,"predicate":"channelAdminLogEventActionChangeLocation","params":[{"name":"prev_value","type":"ChannelLocation"},{"name":"new_value","type":"ChannelLocation"}],"type":"ChannelAdminLogEventAction"},{"id":1401984889,"predicate":"channelAdminLogEventActionToggleSlowMode","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":589338437,"predicate":"channelAdminLogEventActionStartGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-610299584,"predicate":"channelAdminLogEventActionDiscardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-115071790,"predicate":"channelAdminLogEventActionParticipantMute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-431740480,"predicate":"channelAdminLogEventActionParticipantUnmute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1456906823,"predicate":"channelAdminLogEventActionToggleGroupCallSetting","params":[{"name":"join_muted","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":1557846647,"predicate":"channelAdminLogEventActionParticipantJoinByInvite","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1515256996,"predicate":"channelAdminLogEventActionExportedInviteDelete","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1091179342,"predicate":"channelAdminLogEventActionExportedInviteRevoke","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":-384910503,"predicate":"channelAdminLogEventActionExportedInviteEdit","params":[{"name":"prev_invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1048537159,"predicate":"channelAdminLogEventActionParticipantVolume","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1855199800,"predicate":"channelAdminLogEventActionChangeHistoryTTL","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":-26672755,"predicate":"channelAdminLogEventActionChangeTheme","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":531458253,"predicate":"channelAdminLogEvent","params":[{"name":"id","type":"long"},{"name":"date","type":"int"},{"name":"user_id","type":"long"},{"name":"action","type":"ChannelAdminLogEventAction"}],"type":"ChannelAdminLogEvent"},{"id":-309659827,"predicate":"channels.adminLogResults","params":[{"name":"events","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.AdminLogResults"},{"id":-368018716,"predicate":"channelAdminLogEventsFilter","params":[{"name":"flags","type":"#"},{"name":"join","type":"flags.0?true"},{"name":"leave","type":"flags.1?true"},{"name":"invite","type":"flags.2?true"},{"name":"ban","type":"flags.3?true"},{"name":"unban","type":"flags.4?true"},{"name":"kick","type":"flags.5?true"},{"name":"unkick","type":"flags.6?true"},{"name":"promote","type":"flags.7?true"},{"name":"demote","type":"flags.8?true"},{"name":"info","type":"flags.9?true"},{"name":"settings","type":"flags.10?true"},{"name":"pinned","type":"flags.11?true"},{"name":"edit","type":"flags.12?true"},{"name":"delete","type":"flags.13?true"},{"name":"group_call","type":"flags.14?true"},{"name":"invites","type":"flags.15?true"}],"type":"ChannelAdminLogEventsFilter"},{"id":1558266229,"predicate":"popularContact","params":[{"name":"client_id","type":"long"},{"name":"importers","type":"int"}],"type":"PopularContact"},{"id":-1634752813,"predicate":"messages.favedStickersNotModified","params":[],"type":"messages.FavedStickers"},{"id":750063767,"predicate":"messages.favedStickers","params":[{"name":"hash","type":"long"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"}],"type":"messages.FavedStickers"},{"id":1189204285,"predicate":"recentMeUrlUnknown","params":[{"name":"url","type":"string"}],"type":"RecentMeUrl"},{"id":-1188296222,"predicate":"recentMeUrlUser","params":[{"name":"url","type":"string"},{"name":"user_id","type":"long"}],"type":"RecentMeUrl"},{"id":-1294306862,"predicate":"recentMeUrlChat","params":[{"name":"url","type":"string"},{"name":"chat_id","type":"long"}],"type":"RecentMeUrl"},{"id":-347535331,"predicate":"recentMeUrlChatInvite","params":[{"name":"url","type":"string"},{"name":"chat_invite","type":"ChatInvite"}],"type":"RecentMeUrl"},{"id":-1140172836,"predicate":"recentMeUrlStickerSet","params":[{"name":"url","type":"string"},{"name":"set","type":"StickerSetCovered"}],"type":"RecentMeUrl"},{"id":235081943,"predicate":"help.recentMeUrls","params":[{"name":"urls","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"help.RecentMeUrls"},{"id":482797855,"predicate":"inputSingleMedia","params":[{"name":"flags","type":"#"},{"name":"media","type":"InputMedia"},{"name":"random_id","type":"long"},{"name":"message","type":"string"},{"name":"entities","type":"flags.0?Vector"}],"type":"InputSingleMedia"},{"id":-1493633966,"predicate":"webAuthorization","params":[{"name":"hash","type":"long"},{"name":"bot_id","type":"long"},{"name":"domain","type":"string"},{"name":"browser","type":"string"},{"name":"platform","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"region","type":"string"}],"type":"WebAuthorization"},{"id":-313079300,"predicate":"account.webAuthorizations","params":[{"name":"authorizations","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.WebAuthorizations"},{"id":-1502174430,"predicate":"inputMessageID","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-1160215659,"predicate":"inputMessageReplyTo","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-2037963464,"predicate":"inputMessagePinned","params":[],"type":"InputMessage"},{"id":-1392895362,"predicate":"inputMessageCallbackQuery","params":[{"name":"id","type":"int"},{"name":"query_id","type":"long"}],"type":"InputMessage"},{"id":-55902537,"predicate":"inputDialogPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputDialogPeer"},{"id":1684014375,"predicate":"inputDialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"InputDialogPeer"},{"id":-445792507,"predicate":"dialogPeer","params":[{"name":"peer","type":"Peer"}],"type":"DialogPeer"},{"id":1363483106,"predicate":"dialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"DialogPeer"},{"id":223655517,"predicate":"messages.foundStickerSetsNotModified","params":[],"type":"messages.FoundStickerSets"},{"id":-1963942446,"predicate":"messages.foundStickerSets","params":[{"name":"hash","type":"long"},{"name":"sets","type":"Vector"}],"type":"messages.FoundStickerSets"},{"id":1648543603,"predicate":"fileHash","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"bytes"}],"type":"FileHash"},{"id":1968737087,"predicate":"inputClientProxy","params":[{"name":"address","type":"string"},{"name":"port","type":"int"}],"type":"InputClientProxy"},{"id":-483352705,"predicate":"help.termsOfServiceUpdateEmpty","params":[{"name":"expires","type":"int"}],"type":"help.TermsOfServiceUpdate"},{"id":686618977,"predicate":"help.termsOfServiceUpdate","params":[{"name":"expires","type":"int"},{"name":"terms_of_service","type":"help.TermsOfService"}],"type":"help.TermsOfServiceUpdate"},{"id":859091184,"predicate":"inputSecureFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"InputSecureFile"},{"id":1399317950,"predicate":"inputSecureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputSecureFile"},{"id":1679398724,"predicate":"secureFileEmpty","params":[],"type":"SecureFile"},{"id":-534283678,"predicate":"secureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"date","type":"int"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureFile"},{"id":-1964327229,"predicate":"secureData","params":[{"name":"data","type":"bytes"},{"name":"data_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureData"},{"id":2103482845,"predicate":"securePlainPhone","params":[{"name":"phone","type":"string"}],"type":"SecurePlainData"},{"id":569137759,"predicate":"securePlainEmail","params":[{"name":"email","type":"string"}],"type":"SecurePlainData"},{"id":-1658158621,"predicate":"secureValueTypePersonalDetails","params":[],"type":"SecureValueType"},{"id":1034709504,"predicate":"secureValueTypePassport","params":[],"type":"SecureValueType"},{"id":115615172,"predicate":"secureValueTypeDriverLicense","params":[],"type":"SecureValueType"},{"id":-1596951477,"predicate":"secureValueTypeIdentityCard","params":[],"type":"SecureValueType"},{"id":-1717268701,"predicate":"secureValueTypeInternalPassport","params":[],"type":"SecureValueType"},{"id":-874308058,"predicate":"secureValueTypeAddress","params":[],"type":"SecureValueType"},{"id":-63531698,"predicate":"secureValueTypeUtilityBill","params":[],"type":"SecureValueType"},{"id":-1995211763,"predicate":"secureValueTypeBankStatement","params":[],"type":"SecureValueType"},{"id":-1954007928,"predicate":"secureValueTypeRentalAgreement","params":[],"type":"SecureValueType"},{"id":-1713143702,"predicate":"secureValueTypePassportRegistration","params":[],"type":"SecureValueType"},{"id":-368907213,"predicate":"secureValueTypeTemporaryRegistration","params":[],"type":"SecureValueType"},{"id":-1289704741,"predicate":"secureValueTypePhone","params":[],"type":"SecureValueType"},{"id":-1908627474,"predicate":"secureValueTypeEmail","params":[],"type":"SecureValueType"},{"id":411017418,"predicate":"secureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?SecureFile"},{"name":"reverse_side","type":"flags.2?SecureFile"},{"name":"selfie","type":"flags.3?SecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"},{"name":"hash","type":"bytes"}],"type":"SecureValue"},{"id":-618540889,"predicate":"inputSecureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?InputSecureFile"},{"name":"reverse_side","type":"flags.2?InputSecureFile"},{"name":"selfie","type":"flags.3?InputSecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"}],"type":"InputSecureValue"},{"id":-316748368,"predicate":"secureValueHash","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"}],"type":"SecureValueHash"},{"id":-391902247,"predicate":"secureValueErrorData","params":[{"name":"type","type":"SecureValueType"},{"name":"data_hash","type":"bytes"},{"name":"field","type":"string"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":12467706,"predicate":"secureValueErrorFrontSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2037765467,"predicate":"secureValueErrorReverseSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-449327402,"predicate":"secureValueErrorSelfie","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2054162547,"predicate":"secureValueErrorFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":1717706985,"predicate":"secureValueErrorFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2036501105,"predicate":"secureValueError","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-1592506512,"predicate":"secureValueErrorTranslationFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":878931416,"predicate":"secureValueErrorTranslationFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":871426631,"predicate":"secureCredentialsEncrypted","params":[{"name":"data","type":"bytes"},{"name":"hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureCredentialsEncrypted"},{"id":-1389486888,"predicate":"account.authorizationForm","params":[{"name":"flags","type":"#"},{"name":"required_types","type":"Vector"},{"name":"values","type":"Vector"},{"name":"errors","type":"Vector"},{"name":"users","type":"Vector"},{"name":"privacy_policy_url","type":"flags.0?string"}],"type":"account.AuthorizationForm"},{"id":-2128640689,"predicate":"account.sentEmailCode","params":[{"name":"email_pattern","type":"string"},{"name":"length","type":"int"}],"type":"account.SentEmailCode"},{"id":1722786150,"predicate":"help.deepLinkInfoEmpty","params":[],"type":"help.DeepLinkInfo"},{"id":1783556146,"predicate":"help.deepLinkInfo","params":[{"name":"flags","type":"#"},{"name":"update_app","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"help.DeepLinkInfo"},{"id":289586518,"predicate":"savedPhoneContact","params":[{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"date","type":"int"}],"type":"SavedContact"},{"id":1304052993,"predicate":"account.takeout","params":[{"name":"id","type":"long"}],"type":"account.Takeout"},{"id":-732254058,"predicate":"passwordKdfAlgoUnknown","params":[],"type":"PasswordKdfAlgo"},{"id":982592842,"predicate":"passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow","params":[{"name":"salt1","type":"bytes"},{"name":"salt2","type":"bytes"},{"name":"g","type":"int"},{"name":"p","type":"bytes"}],"type":"PasswordKdfAlgo"},{"id":4883767,"predicate":"securePasswordKdfAlgoUnknown","params":[],"type":"SecurePasswordKdfAlgo"},{"id":-1141711456,"predicate":"securePasswordKdfAlgoPBKDF2HMACSHA512iter100000","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":-2042159726,"predicate":"securePasswordKdfAlgoSHA512","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":354925740,"predicate":"secureSecretSettings","params":[{"name":"secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_secret","type":"bytes"},{"name":"secure_secret_id","type":"long"}],"type":"SecureSecretSettings"},{"id":-1736378792,"predicate":"inputCheckPasswordEmpty","params":[],"type":"InputCheckPasswordSRP"},{"id":-763367294,"predicate":"inputCheckPasswordSRP","params":[{"name":"srp_id","type":"long"},{"name":"A","type":"bytes"},{"name":"M1","type":"bytes"}],"type":"InputCheckPasswordSRP"},{"id":-2103600678,"predicate":"secureRequiredType","params":[{"name":"flags","type":"#"},{"name":"native_names","type":"flags.0?true"},{"name":"selfie_required","type":"flags.1?true"},{"name":"translation_required","type":"flags.2?true"},{"name":"type","type":"SecureValueType"}],"type":"SecureRequiredType"},{"id":41187252,"predicate":"secureRequiredTypeOneOf","params":[{"name":"types","type":"Vector"}],"type":"SecureRequiredType"},{"id":-1078332329,"predicate":"help.passportConfigNotModified","params":[],"type":"help.PassportConfig"},{"id":-1600596305,"predicate":"help.passportConfig","params":[{"name":"hash","type":"int"},{"name":"countries_langs","type":"DataJSON"}],"type":"help.PassportConfig"},{"id":488313413,"predicate":"inputAppEvent","params":[{"name":"time","type":"double"},{"name":"type","type":"string"},{"name":"peer","type":"long"},{"name":"data","type":"JSONValue"}],"type":"InputAppEvent"},{"id":-1059185703,"predicate":"jsonObjectValue","params":[{"name":"key","type":"string"},{"name":"value","type":"JSONValue"}],"type":"JSONObjectValue"},{"id":1064139624,"predicate":"jsonNull","params":[],"type":"JSONValue"},{"id":-952869270,"predicate":"jsonBool","params":[{"name":"value","type":"Bool"}],"type":"JSONValue"},{"id":736157604,"predicate":"jsonNumber","params":[{"name":"value","type":"double"}],"type":"JSONValue"},{"id":-1222740358,"predicate":"jsonString","params":[{"name":"value","type":"string"}],"type":"JSONValue"},{"id":-146520221,"predicate":"jsonArray","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":-1715350371,"predicate":"jsonObject","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":878078826,"predicate":"pageTableCell","params":[{"name":"flags","type":"#"},{"name":"header","type":"flags.0?true"},{"name":"align_center","type":"flags.3?true"},{"name":"align_right","type":"flags.4?true"},{"name":"valign_middle","type":"flags.5?true"},{"name":"valign_bottom","type":"flags.6?true"},{"name":"text","type":"flags.7?RichText"},{"name":"colspan","type":"flags.1?int"},{"name":"rowspan","type":"flags.2?int"}],"type":"PageTableCell"},{"id":-524237339,"predicate":"pageTableRow","params":[{"name":"cells","type":"Vector"}],"type":"PageTableRow"},{"id":1869903447,"predicate":"pageCaption","params":[{"name":"text","type":"RichText"},{"name":"credit","type":"RichText"}],"type":"PageCaption"},{"id":-1188055347,"predicate":"pageListItemText","params":[{"name":"text","type":"RichText"}],"type":"PageListItem"},{"id":635466748,"predicate":"pageListItemBlocks","params":[{"name":"blocks","type":"Vector"}],"type":"PageListItem"},{"id":1577484359,"predicate":"pageListOrderedItemText","params":[{"name":"num","type":"string"},{"name":"text","type":"RichText"}],"type":"PageListOrderedItem"},{"id":-1730311882,"predicate":"pageListOrderedItemBlocks","params":[{"name":"num","type":"string"},{"name":"blocks","type":"Vector"}],"type":"PageListOrderedItem"},{"id":-1282352120,"predicate":"pageRelatedArticle","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"title","type":"flags.0?string"},{"name":"description","type":"flags.1?string"},{"name":"photo_id","type":"flags.2?long"},{"name":"author","type":"flags.3?string"},{"name":"published_date","type":"flags.4?int"}],"type":"PageRelatedArticle"},{"id":-1738178803,"predicate":"page","params":[{"name":"flags","type":"#"},{"name":"part","type":"flags.0?true"},{"name":"rtl","type":"flags.1?true"},{"name":"v2","type":"flags.2?true"},{"name":"url","type":"string"},{"name":"blocks","type":"Vector"},{"name":"photos","type":"Vector"},{"name":"documents","type":"Vector"},{"name":"views","type":"flags.3?int"}],"type":"Page"},{"id":-1945767479,"predicate":"help.supportName","params":[{"name":"name","type":"string"}],"type":"help.SupportName"},{"id":-206688531,"predicate":"help.userInfoEmpty","params":[],"type":"help.UserInfo"},{"id":32192344,"predicate":"help.userInfo","params":[{"name":"message","type":"string"},{"name":"entities","type":"Vector"},{"name":"author","type":"string"},{"name":"date","type":"int"}],"type":"help.UserInfo"},{"id":1823064809,"predicate":"pollAnswer","params":[{"name":"text","type":"string"},{"name":"option","type":"bytes"}],"type":"PollAnswer"},{"id":-2032041631,"predicate":"poll","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"closed","type":"flags.0?true"},{"name":"public_voters","type":"flags.1?true"},{"name":"multiple_choice","type":"flags.2?true"},{"name":"quiz","type":"flags.3?true"},{"name":"question","type":"string"},{"name":"answers","type":"Vector"},{"name":"close_period","type":"flags.4?int"},{"name":"close_date","type":"flags.5?int"}],"type":"Poll"},{"id":997055186,"predicate":"pollAnswerVoters","params":[{"name":"flags","type":"#"},{"name":"chosen","type":"flags.0?true"},{"name":"correct","type":"flags.1?true"},{"name":"option","type":"bytes"},{"name":"voters","type":"int"}],"type":"PollAnswerVoters"},{"id":-591909213,"predicate":"pollResults","params":[{"name":"flags","type":"#"},{"name":"min","type":"flags.0?true"},{"name":"results","type":"flags.1?Vector"},{"name":"total_voters","type":"flags.2?int"},{"name":"recent_voters","type":"flags.3?Vector"},{"name":"solution","type":"flags.4?string"},{"name":"solution_entities","type":"flags.4?Vector"}],"type":"PollResults"},{"id":-264117680,"predicate":"chatOnlines","params":[{"name":"onlines","type":"int"}],"type":"ChatOnlines"},{"id":1202287072,"predicate":"statsURL","params":[{"name":"url","type":"string"}],"type":"StatsURL"},{"id":1605510357,"predicate":"chatAdminRights","params":[{"name":"flags","type":"#"},{"name":"change_info","type":"flags.0?true"},{"name":"post_messages","type":"flags.1?true"},{"name":"edit_messages","type":"flags.2?true"},{"name":"delete_messages","type":"flags.3?true"},{"name":"ban_users","type":"flags.4?true"},{"name":"invite_users","type":"flags.5?true"},{"name":"pin_messages","type":"flags.7?true"},{"name":"add_admins","type":"flags.9?true"},{"name":"anonymous","type":"flags.10?true"},{"name":"manage_call","type":"flags.11?true"},{"name":"other","type":"flags.12?true"}],"type":"ChatAdminRights"},{"id":-1626209256,"predicate":"chatBannedRights","params":[{"name":"flags","type":"#"},{"name":"view_messages","type":"flags.0?true"},{"name":"send_messages","type":"flags.1?true"},{"name":"send_media","type":"flags.2?true"},{"name":"send_stickers","type":"flags.3?true"},{"name":"send_gifs","type":"flags.4?true"},{"name":"send_games","type":"flags.5?true"},{"name":"send_inline","type":"flags.6?true"},{"name":"embed_links","type":"flags.7?true"},{"name":"send_polls","type":"flags.8?true"},{"name":"change_info","type":"flags.10?true"},{"name":"invite_users","type":"flags.15?true"},{"name":"pin_messages","type":"flags.17?true"},{"name":"until_date","type":"int"}],"type":"ChatBannedRights"},{"id":-433014407,"predicate":"inputWallPaper","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputWallPaper"},{"id":1913199744,"predicate":"inputWallPaperSlug","params":[{"name":"slug","type":"string"}],"type":"InputWallPaper"},{"id":-1770371538,"predicate":"inputWallPaperNoFile","params":[{"name":"id","type":"long"}],"type":"InputWallPaper"},{"id":471437699,"predicate":"account.wallPapersNotModified","params":[],"type":"account.WallPapers"},{"id":-842824308,"predicate":"account.wallPapers","params":[{"name":"hash","type":"long"},{"name":"wallpapers","type":"Vector"}],"type":"account.WallPapers"},{"id":-557924733,"predicate":"codeSettings","params":[{"name":"flags","type":"#"},{"name":"allow_flashcall","type":"flags.0?true"},{"name":"current_number","type":"flags.1?true"},{"name":"allow_app_hash","type":"flags.4?true"}],"type":"CodeSettings"},{"id":499236004,"predicate":"wallPaperSettings","params":[{"name":"flags","type":"#"},{"name":"blur","type":"flags.1?true"},{"name":"motion","type":"flags.2?true"},{"name":"background_color","type":"flags.0?int"},{"name":"second_background_color","type":"flags.4?int"},{"name":"third_background_color","type":"flags.5?int"},{"name":"fourth_background_color","type":"flags.6?int"},{"name":"intensity","type":"flags.3?int"},{"name":"rotation","type":"flags.4?int"}],"type":"WallPaperSettings"},{"id":-532532493,"predicate":"autoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"disabled","type":"flags.0?true"},{"name":"video_preload_large","type":"flags.1?true"},{"name":"audio_preload_next","type":"flags.2?true"},{"name":"phonecalls_less_data","type":"flags.3?true"},{"name":"photo_size_max","type":"int"},{"name":"video_size_max","type":"int"},{"name":"file_size_max","type":"int"},{"name":"video_upload_maxbitrate","type":"int"}],"type":"AutoDownloadSettings"},{"id":1674235686,"predicate":"account.autoDownloadSettings","params":[{"name":"low","type":"AutoDownloadSettings"},{"name":"medium","type":"AutoDownloadSettings"},{"name":"high","type":"AutoDownloadSettings"}],"type":"account.AutoDownloadSettings"},{"id":-709641735,"predicate":"emojiKeyword","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":594408994,"predicate":"emojiKeywordDeleted","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":1556570557,"predicate":"emojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"keywords","type":"Vector"}],"type":"EmojiKeywordsDifference"},{"id":-1519029347,"predicate":"emojiURL","params":[{"name":"url","type":"string"}],"type":"EmojiURL"},{"id":-1275374751,"predicate":"emojiLanguage","params":[{"name":"lang_code","type":"string"}],"type":"EmojiLanguage"},{"id":-11252123,"predicate":"folder","params":[{"name":"flags","type":"#"},{"name":"autofill_new_broadcasts","type":"flags.0?true"},{"name":"autofill_public_groups","type":"flags.1?true"},{"name":"autofill_new_correspondents","type":"flags.2?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"flags.3?ChatPhoto"}],"type":"Folder"},{"id":-70073706,"predicate":"inputFolderPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"folder_id","type":"int"}],"type":"InputFolderPeer"},{"id":-373643672,"predicate":"folderPeer","params":[{"name":"peer","type":"Peer"},{"name":"folder_id","type":"int"}],"type":"FolderPeer"},{"id":-398136321,"predicate":"messages.searchCounter","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"filter","type":"MessagesFilter"},{"name":"count","type":"int"}],"type":"messages.SearchCounter"},{"id":-1831650802,"predicate":"urlAuthResultRequest","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"bot","type":"User"},{"name":"domain","type":"string"}],"type":"UrlAuthResult"},{"id":-1886646706,"predicate":"urlAuthResultAccepted","params":[{"name":"url","type":"string"}],"type":"UrlAuthResult"},{"id":-1445536993,"predicate":"urlAuthResultDefault","params":[],"type":"UrlAuthResult"},{"id":-1078612597,"predicate":"channelLocationEmpty","params":[],"type":"ChannelLocation"},{"id":547062491,"predicate":"channelLocation","params":[{"name":"geo_point","type":"GeoPoint"},{"name":"address","type":"string"}],"type":"ChannelLocation"},{"id":-901375139,"predicate":"peerLocated","params":[{"name":"peer","type":"Peer"},{"name":"expires","type":"int"},{"name":"distance","type":"int"}],"type":"PeerLocated"},{"id":-118740917,"predicate":"peerSelfLocated","params":[{"name":"expires","type":"int"}],"type":"PeerLocated"},{"id":-797791052,"predicate":"restrictionReason","params":[{"name":"platform","type":"string"},{"name":"reason","type":"string"},{"name":"text","type":"string"}],"type":"RestrictionReason"},{"id":1012306921,"predicate":"inputTheme","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputTheme"},{"id":-175567375,"predicate":"inputThemeSlug","params":[{"name":"slug","type":"string"}],"type":"InputTheme"},{"id":-402474788,"predicate":"theme","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"for_chat","type":"flags.5?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?Document"},{"name":"settings","type":"flags.3?ThemeSettings"},{"name":"installs_count","type":"flags.4?int"}],"type":"Theme"},{"id":-199313886,"predicate":"account.themesNotModified","params":[],"type":"account.Themes"},{"id":-1707242387,"predicate":"account.themes","params":[{"name":"hash","type":"long"},{"name":"themes","type":"Vector"}],"type":"account.Themes"},{"id":1654593920,"predicate":"auth.loginToken","params":[{"name":"expires","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":110008598,"predicate":"auth.loginTokenMigrateTo","params":[{"name":"dc_id","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":957176926,"predicate":"auth.loginTokenSuccess","params":[{"name":"authorization","type":"auth.Authorization"}],"type":"auth.LoginToken"},{"id":1474462241,"predicate":"account.contentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"},{"name":"sensitive_can_change","type":"flags.1?true"}],"type":"account.ContentSettings"},{"id":-1456996667,"predicate":"messages.inactiveChats","params":[{"name":"dates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.InactiveChats"},{"id":-1012849566,"predicate":"baseThemeClassic","params":[],"type":"BaseTheme"},{"id":-69724536,"predicate":"baseThemeDay","params":[],"type":"BaseTheme"},{"id":-1212997976,"predicate":"baseThemeNight","params":[],"type":"BaseTheme"},{"id":1834973166,"predicate":"baseThemeTinted","params":[],"type":"BaseTheme"},{"id":1527845466,"predicate":"baseThemeArctic","params":[],"type":"BaseTheme"},{"id":-1881255857,"predicate":"inputThemeSettings","params":[{"name":"flags","type":"#"},{"name":"message_colors_animated","type":"flags.2?true"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"outbox_accent_color","type":"flags.3?int"},{"name":"message_colors","type":"flags.0?Vector"},{"name":"wallpaper","type":"flags.1?InputWallPaper"},{"name":"wallpaper_settings","type":"flags.1?WallPaperSettings"}],"type":"InputThemeSettings"},{"id":-94849324,"predicate":"themeSettings","params":[{"name":"flags","type":"#"},{"name":"message_colors_animated","type":"flags.2?true"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"outbox_accent_color","type":"flags.3?int"},{"name":"message_colors","type":"flags.0?Vector"},{"name":"wallpaper","type":"flags.1?WallPaper"}],"type":"ThemeSettings"},{"id":1421174295,"predicate":"webPageAttributeTheme","params":[{"name":"flags","type":"#"},{"name":"documents","type":"flags.0?Vector"},{"name":"settings","type":"flags.1?ThemeSettings"}],"type":"WebPageAttribute"},{"id":886196148,"predicate":"messageUserVote","params":[{"name":"user_id","type":"long"},{"name":"option","type":"bytes"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":1017491692,"predicate":"messageUserVoteInputOption","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":-1973033641,"predicate":"messageUserVoteMultiple","params":[{"name":"user_id","type":"long"},{"name":"options","type":"Vector"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":136574537,"predicate":"messages.votesList","params":[{"name":"flags","type":"#"},{"name":"count","type":"int"},{"name":"votes","type":"Vector"},{"name":"users","type":"Vector"},{"name":"next_offset","type":"flags.0?string"}],"type":"messages.VotesList"},{"id":-177732982,"predicate":"bankCardOpenUrl","params":[{"name":"url","type":"string"},{"name":"name","type":"string"}],"type":"BankCardOpenUrl"},{"id":1042605427,"predicate":"payments.bankCardData","params":[{"name":"title","type":"string"},{"name":"open_urls","type":"Vector"}],"type":"payments.BankCardData"},{"id":1949890536,"predicate":"dialogFilter","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"non_contacts","type":"flags.1?true"},{"name":"groups","type":"flags.2?true"},{"name":"broadcasts","type":"flags.3?true"},{"name":"bots","type":"flags.4?true"},{"name":"exclude_muted","type":"flags.11?true"},{"name":"exclude_read","type":"flags.12?true"},{"name":"exclude_archived","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"emoticon","type":"flags.25?string"},{"name":"pinned_peers","type":"Vector"},{"name":"include_peers","type":"Vector"},{"name":"exclude_peers","type":"Vector"}],"type":"DialogFilter"},{"id":2004110666,"predicate":"dialogFilterSuggested","params":[{"name":"filter","type":"DialogFilter"},{"name":"description","type":"string"}],"type":"DialogFilterSuggested"},{"id":-1237848657,"predicate":"statsDateRangeDays","params":[{"name":"min_date","type":"int"},{"name":"max_date","type":"int"}],"type":"StatsDateRangeDays"},{"id":-884757282,"predicate":"statsAbsValueAndPrev","params":[{"name":"current","type":"double"},{"name":"previous","type":"double"}],"type":"StatsAbsValueAndPrev"},{"id":-875679776,"predicate":"statsPercentValue","params":[{"name":"part","type":"double"},{"name":"total","type":"double"}],"type":"StatsPercentValue"},{"id":1244130093,"predicate":"statsGraphAsync","params":[{"name":"token","type":"string"}],"type":"StatsGraph"},{"id":-1092839390,"predicate":"statsGraphError","params":[{"name":"error","type":"string"}],"type":"StatsGraph"},{"id":-1901828938,"predicate":"statsGraph","params":[{"name":"flags","type":"#"},{"name":"json","type":"DataJSON"},{"name":"zoom_token","type":"flags.0?string"}],"type":"StatsGraph"},{"id":-1387279939,"predicate":"messageInteractionCounters","params":[{"name":"msg_id","type":"int"},{"name":"views","type":"int"},{"name":"forwards","type":"int"}],"type":"MessageInteractionCounters"},{"id":-1107852396,"predicate":"stats.broadcastStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"followers","type":"StatsAbsValueAndPrev"},{"name":"views_per_post","type":"StatsAbsValueAndPrev"},{"name":"shares_per_post","type":"StatsAbsValueAndPrev"},{"name":"enabled_notifications","type":"StatsPercentValue"},{"name":"growth_graph","type":"StatsGraph"},{"name":"followers_graph","type":"StatsGraph"},{"name":"mute_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"interactions_graph","type":"StatsGraph"},{"name":"iv_interactions_graph","type":"StatsGraph"},{"name":"views_by_source_graph","type":"StatsGraph"},{"name":"new_followers_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"recent_message_interactions","type":"Vector"}],"type":"stats.BroadcastStats"},{"id":-1728664459,"predicate":"help.promoDataEmpty","params":[{"name":"expires","type":"int"}],"type":"help.PromoData"},{"id":-1942390465,"predicate":"help.promoData","params":[{"name":"flags","type":"#"},{"name":"proxy","type":"flags.0?true"},{"name":"expires","type":"int"},{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"psa_type","type":"flags.1?string"},{"name":"psa_message","type":"flags.2?string"}],"type":"help.PromoData"},{"id":-567037804,"predicate":"videoSize","params":[{"name":"flags","type":"#"},{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"},{"name":"video_start_ts","type":"flags.0?double"}],"type":"VideoSize"},{"id":-1660637285,"predicate":"statsGroupTopPoster","params":[{"name":"user_id","type":"long"},{"name":"messages","type":"int"},{"name":"avg_chars","type":"int"}],"type":"StatsGroupTopPoster"},{"id":-682079097,"predicate":"statsGroupTopAdmin","params":[{"name":"user_id","type":"long"},{"name":"deleted","type":"int"},{"name":"kicked","type":"int"},{"name":"banned","type":"int"}],"type":"StatsGroupTopAdmin"},{"id":1398765469,"predicate":"statsGroupTopInviter","params":[{"name":"user_id","type":"long"},{"name":"invitations","type":"int"}],"type":"StatsGroupTopInviter"},{"id":-276825834,"predicate":"stats.megagroupStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"members","type":"StatsAbsValueAndPrev"},{"name":"messages","type":"StatsAbsValueAndPrev"},{"name":"viewers","type":"StatsAbsValueAndPrev"},{"name":"posters","type":"StatsAbsValueAndPrev"},{"name":"growth_graph","type":"StatsGraph"},{"name":"members_graph","type":"StatsGraph"},{"name":"new_members_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"messages_graph","type":"StatsGraph"},{"name":"actions_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"weekdays_graph","type":"StatsGraph"},{"name":"top_posters","type":"Vector"},{"name":"top_admins","type":"Vector"},{"name":"top_inviters","type":"Vector"},{"name":"users","type":"Vector"}],"type":"stats.MegagroupStats"},{"id":-1096616924,"predicate":"globalPrivacySettings","params":[{"name":"flags","type":"#"},{"name":"archive_and_mute_new_noncontact_peers","type":"flags.0?Bool"}],"type":"GlobalPrivacySettings"},{"id":1107543535,"predicate":"help.countryCode","params":[{"name":"flags","type":"#"},{"name":"country_code","type":"string"},{"name":"prefixes","type":"flags.0?Vector"},{"name":"patterns","type":"flags.1?Vector"}],"type":"help.CountryCode"},{"id":-1014526429,"predicate":"help.country","params":[{"name":"flags","type":"#"},{"name":"hidden","type":"flags.0?true"},{"name":"iso2","type":"string"},{"name":"default_name","type":"string"},{"name":"name","type":"flags.1?string"},{"name":"country_codes","type":"Vector"}],"type":"help.Country"},{"id":-1815339214,"predicate":"help.countriesListNotModified","params":[],"type":"help.CountriesList"},{"id":-2016381538,"predicate":"help.countriesList","params":[{"name":"countries","type":"Vector"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":1163625789,"predicate":"messageViews","params":[{"name":"flags","type":"#"},{"name":"views","type":"flags.0?int"},{"name":"forwards","type":"flags.1?int"},{"name":"replies","type":"flags.2?MessageReplies"}],"type":"MessageViews"},{"id":-1228606141,"predicate":"messages.messageViews","params":[{"name":"views","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.MessageViews"},{"id":-1506535550,"predicate":"messages.discussionMessage","params":[{"name":"flags","type":"#"},{"name":"messages","type":"Vector"},{"name":"max_id","type":"flags.0?int"},{"name":"read_inbox_max_id","type":"flags.1?int"},{"name":"read_outbox_max_id","type":"flags.2?int"},{"name":"unread_count","type":"int"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.DiscussionMessage"},{"id":-1495959709,"predicate":"messageReplyHeader","params":[{"name":"flags","type":"#"},{"name":"reply_to_msg_id","type":"int"},{"name":"reply_to_peer_id","type":"flags.0?Peer"},{"name":"reply_to_top_id","type":"flags.1?int"}],"type":"MessageReplyHeader"},{"id":-2083123262,"predicate":"messageReplies","params":[{"name":"flags","type":"#"},{"name":"comments","type":"flags.0?true"},{"name":"replies","type":"int"},{"name":"replies_pts","type":"int"},{"name":"recent_repliers","type":"flags.1?Vector"},{"name":"channel_id","type":"flags.0?long"},{"name":"max_id","type":"flags.2?int"},{"name":"read_max_id","type":"flags.3?int"}],"type":"MessageReplies"},{"id":-386039788,"predicate":"peerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"date","type":"int"}],"type":"PeerBlocked"},{"id":-1986399595,"predicate":"stats.messageStats","params":[{"name":"views_graph","type":"StatsGraph"}],"type":"stats.MessageStats"},{"id":2004925620,"predicate":"groupCallDiscarded","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"duration","type":"int"}],"type":"GroupCall"},{"id":-711498484,"predicate":"groupCall","params":[{"name":"flags","type":"#"},{"name":"join_muted","type":"flags.1?true"},{"name":"can_change_join_muted","type":"flags.2?true"},{"name":"join_date_asc","type":"flags.6?true"},{"name":"schedule_start_subscribed","type":"flags.8?true"},{"name":"can_start_video","type":"flags.9?true"},{"name":"record_video_active","type":"flags.11?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"participants_count","type":"int"},{"name":"title","type":"flags.3?string"},{"name":"stream_dc_id","type":"flags.4?int"},{"name":"record_start_date","type":"flags.5?int"},{"name":"schedule_date","type":"flags.7?int"},{"name":"unmuted_video_count","type":"flags.10?int"},{"name":"unmuted_video_limit","type":"int"},{"name":"version","type":"int"}],"type":"GroupCall"},{"id":-659913713,"predicate":"inputGroupCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGroupCall"},{"id":-341428482,"predicate":"groupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"left","type":"flags.1?true"},{"name":"can_self_unmute","type":"flags.2?true"},{"name":"just_joined","type":"flags.4?true"},{"name":"versioned","type":"flags.5?true"},{"name":"min","type":"flags.8?true"},{"name":"muted_by_you","type":"flags.9?true"},{"name":"volume_by_admin","type":"flags.10?true"},{"name":"self","type":"flags.12?true"},{"name":"video_joined","type":"flags.15?true"},{"name":"peer","type":"Peer"},{"name":"date","type":"int"},{"name":"active_date","type":"flags.3?int"},{"name":"source","type":"int"},{"name":"volume","type":"flags.7?int"},{"name":"about","type":"flags.11?string"},{"name":"raise_hand_rating","type":"flags.13?long"},{"name":"video","type":"flags.6?GroupCallParticipantVideo"},{"name":"presentation","type":"flags.14?GroupCallParticipantVideo"}],"type":"GroupCallParticipant"},{"id":-1636664659,"predicate":"phone.groupCall","params":[{"name":"call","type":"GroupCall"},{"name":"participants","type":"Vector"},{"name":"participants_next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.GroupCall"},{"id":-193506890,"predicate":"phone.groupParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"version","type":"int"}],"type":"phone.GroupParticipants"},{"id":813821341,"predicate":"inlineQueryPeerTypeSameBotPM","params":[],"type":"InlineQueryPeerType"},{"id":-2093215828,"predicate":"inlineQueryPeerTypePM","params":[],"type":"InlineQueryPeerType"},{"id":-681130742,"predicate":"inlineQueryPeerTypeChat","params":[],"type":"InlineQueryPeerType"},{"id":1589952067,"predicate":"inlineQueryPeerTypeMegagroup","params":[],"type":"InlineQueryPeerType"},{"id":1664413338,"predicate":"inlineQueryPeerTypeBroadcast","params":[],"type":"InlineQueryPeerType"},{"id":375566091,"predicate":"messages.historyImport","params":[{"name":"id","type":"long"}],"type":"messages.HistoryImport"},{"id":1578088377,"predicate":"messages.historyImportParsed","params":[{"name":"flags","type":"#"},{"name":"pm","type":"flags.0?true"},{"name":"group","type":"flags.1?true"},{"name":"title","type":"flags.2?string"}],"type":"messages.HistoryImportParsed"},{"id":-275956116,"predicate":"messages.affectedFoundMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"},{"name":"messages","type":"Vector"}],"type":"messages.AffectedFoundMessages"},{"id":190633460,"predicate":"chatInviteImporter","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatInviteImporter"},{"id":-1111085620,"predicate":"messages.exportedChatInvites","params":[{"name":"count","type":"int"},{"name":"invites","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvites"},{"id":410107472,"predicate":"messages.exportedChatInvite","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":572915951,"predicate":"messages.exportedChatInviteReplaced","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":-2118733814,"predicate":"messages.chatInviteImporters","params":[{"name":"count","type":"int"},{"name":"importers","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatInviteImporters"},{"id":-219353309,"predicate":"chatAdminWithInvites","params":[{"name":"admin_id","type":"long"},{"name":"invites_count","type":"int"},{"name":"revoked_invites_count","type":"int"}],"type":"ChatAdminWithInvites"},{"id":-1231326505,"predicate":"messages.chatAdminsWithInvites","params":[{"name":"admins","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatAdminsWithInvites"},{"id":-1571952873,"predicate":"messages.checkedHistoryImportPeer","params":[{"name":"confirm_text","type":"string"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-1343921601,"predicate":"phone.joinAsPeers","params":[{"name":"peers","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.JoinAsPeers"},{"id":541839704,"predicate":"phone.exportedGroupCallInvite","params":[{"name":"link","type":"string"}],"type":"phone.ExportedGroupCallInvite"},{"id":-592373577,"predicate":"groupCallParticipantVideoSourceGroup","params":[{"name":"semantics","type":"string"},{"name":"sources","type":"Vector"}],"type":"GroupCallParticipantVideoSourceGroup"},{"id":1735736008,"predicate":"groupCallParticipantVideo","params":[{"name":"flags","type":"#"},{"name":"paused","type":"flags.0?true"},{"name":"endpoint","type":"string"},{"name":"source_groups","type":"Vector"},{"name":"audio_source","type":"flags.1?int"}],"type":"GroupCallParticipantVideo"},{"id":-2046910401,"predicate":"stickers.suggestedShortName","params":[{"name":"short_name","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":795652779,"predicate":"botCommandScopeDefault","params":[],"type":"BotCommandScope"},{"id":1011811544,"predicate":"botCommandScopeUsers","params":[],"type":"BotCommandScope"},{"id":1877059713,"predicate":"botCommandScopeChats","params":[],"type":"BotCommandScope"},{"id":-1180016534,"predicate":"botCommandScopeChatAdmins","params":[],"type":"BotCommandScope"},{"id":-610432643,"predicate":"botCommandScopePeer","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":1071145937,"predicate":"botCommandScopePeerAdmins","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":169026035,"predicate":"botCommandScopePeerUser","params":[{"name":"peer","type":"InputPeer"},{"name":"user_id","type":"InputUser"}],"type":"BotCommandScope"},{"id":-478701471,"predicate":"account.resetPasswordFailedWait","params":[{"name":"retry_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-370148227,"predicate":"account.resetPasswordRequestedWait","params":[{"name":"until_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-383330754,"predicate":"account.resetPasswordOk","params":[],"type":"account.ResetPasswordResult"},{"id":-318022605,"predicate":"chatTheme","params":[{"name":"emoticon","type":"string"},{"name":"theme","type":"Theme"},{"name":"dark_theme","type":"Theme"}],"type":"ChatTheme"},{"id":-535699004,"predicate":"account.chatThemesNotModified","params":[],"type":"account.ChatThemes"},{"id":-28524867,"predicate":"account.chatThemes","params":[{"name":"hash","type":"int"},{"name":"themes","type":"Vector"}],"type":"account.ChatThemes"},{"id":708589599,"predicate":"sponsoredMessage","params":[{"name":"flags","type":"#"},{"name":"random_id","type":"bytes"},{"name":"from_id","type":"Peer"},{"name":"start_param","type":"flags.0?string"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"SponsoredMessage"},{"id":1705297877,"predicate":"messages.sponsoredMessages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.SponsoredMessages"}],"methods":[{"id":-878758099,"method":"invokeAfterMsg","params":[{"name":"msg_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":1036301552,"method":"invokeAfterMsgs","params":[{"name":"msg_ids","type":"Vector"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1043505495,"method":"initConnection","params":[{"name":"flags","type":"#"},{"name":"api_id","type":"int"},{"name":"device_model","type":"string"},{"name":"system_version","type":"string"},{"name":"app_version","type":"string"},{"name":"system_lang_code","type":"string"},{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"proxy","type":"flags.0?InputClientProxy"},{"name":"params","type":"flags.1?JSONValue"},{"name":"query","type":"!X"}],"type":"X"},{"id":-627372787,"method":"invokeWithLayer","params":[{"name":"layer","type":"int"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1080796745,"method":"invokeWithoutUpdates","params":[{"name":"query","type":"!X"}],"type":"X"},{"id":911373810,"method":"invokeWithMessagesRange","params":[{"name":"range","type":"MessageRange"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1398145746,"method":"invokeWithTakeout","params":[{"name":"takeout_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1502141361,"method":"auth.sendCode","params":[{"name":"phone_number","type":"string"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":-2131827673,"method":"auth.signUp","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"auth.Authorization"},{"id":-1126886015,"method":"auth.signIn","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"auth.Authorization"},{"id":1461180992,"method":"auth.logOut","params":[],"type":"Bool"},{"id":-1616179942,"method":"auth.resetAuthorizations","params":[],"type":"Bool"},{"id":-440401971,"method":"auth.exportAuthorization","params":[{"name":"dc_id","type":"int"}],"type":"auth.ExportedAuthorization"},{"id":-1518699091,"method":"auth.importAuthorization","params":[{"name":"id","type":"long"},{"name":"bytes","type":"bytes"}],"type":"auth.Authorization"},{"id":-841733627,"method":"auth.bindTempAuthKey","params":[{"name":"perm_auth_key_id","type":"long"},{"name":"nonce","type":"long"},{"name":"expires_at","type":"int"},{"name":"encrypted_message","type":"bytes"}],"type":"Bool"},{"id":1738800940,"method":"auth.importBotAuthorization","params":[{"name":"flags","type":"int"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"bot_auth_token","type":"string"}],"type":"auth.Authorization"},{"id":-779399914,"method":"auth.checkPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"auth.Authorization"},{"id":-661144474,"method":"auth.requestPasswordRecovery","params":[],"type":"auth.PasswordRecovery"},{"id":923364464,"method":"auth.recoverPassword","params":[{"name":"flags","type":"#"},{"name":"code","type":"string"},{"name":"new_settings","type":"flags.0?account.PasswordInputSettings"}],"type":"auth.Authorization"},{"id":1056025023,"method":"auth.resendCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"auth.SentCode"},{"id":520357240,"method":"auth.cancelCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"Bool"},{"id":-1907842680,"method":"auth.dropTempAuthKeys","params":[{"name":"except_auth_keys","type":"Vector"}],"type":"Bool"},{"id":-1210022402,"method":"auth.exportLoginToken","params":[{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"except_ids","type":"Vector"}],"type":"auth.LoginToken"},{"id":-1783866140,"method":"auth.importLoginToken","params":[{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":-392909491,"method":"auth.acceptLoginToken","params":[{"name":"token","type":"bytes"}],"type":"Authorization"},{"id":221691769,"method":"auth.checkRecoveryPassword","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":-326762118,"method":"account.registerDevice","params":[{"name":"flags","type":"#"},{"name":"no_muted","type":"flags.0?true"},{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"app_sandbox","type":"Bool"},{"name":"secret","type":"bytes"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":1779249670,"method":"account.unregisterDevice","params":[{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":-2067899501,"method":"account.updateNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"},{"name":"settings","type":"InputPeerNotifySettings"}],"type":"Bool"},{"id":313765169,"method":"account.getNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"}],"type":"PeerNotifySettings"},{"id":-612493497,"method":"account.resetNotifySettings","params":[],"type":"Bool"},{"id":2018596725,"method":"account.updateProfile","params":[{"name":"flags","type":"#"},{"name":"first_name","type":"flags.0?string"},{"name":"last_name","type":"flags.1?string"},{"name":"about","type":"flags.2?string"}],"type":"User"},{"id":1713919532,"method":"account.updateStatus","params":[{"name":"offline","type":"Bool"}],"type":"Bool"},{"id":127302966,"method":"account.getWallPapers","params":[{"name":"hash","type":"long"}],"type":"account.WallPapers"},{"id":-977650298,"method":"account.reportPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":655677548,"method":"account.checkUsername","params":[{"name":"username","type":"string"}],"type":"Bool"},{"id":1040964988,"method":"account.updateUsername","params":[{"name":"username","type":"string"}],"type":"User"},{"id":-623130288,"method":"account.getPrivacy","params":[{"name":"key","type":"InputPrivacyKey"}],"type":"account.PrivacyRules"},{"id":-906486552,"method":"account.setPrivacy","params":[{"name":"key","type":"InputPrivacyKey"},{"name":"rules","type":"Vector"}],"type":"account.PrivacyRules"},{"id":1099779595,"method":"account.deleteAccount","params":[{"name":"reason","type":"string"}],"type":"Bool"},{"id":150761757,"method":"account.getAccountTTL","params":[],"type":"AccountDaysTTL"},{"id":608323678,"method":"account.setAccountTTL","params":[{"name":"ttl","type":"AccountDaysTTL"}],"type":"Bool"},{"id":-2108208411,"method":"account.sendChangePhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1891839707,"method":"account.changePhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"User"},{"id":954152242,"method":"account.updateDeviceLocked","params":[{"name":"period","type":"int"}],"type":"Bool"},{"id":-484392616,"method":"account.getAuthorizations","params":[],"type":"account.Authorizations"},{"id":-545786948,"method":"account.resetAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1418342645,"method":"account.getPassword","params":[],"type":"account.Password"},{"id":-1663767815,"method":"account.getPasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"account.PasswordSettings"},{"id":-1516564433,"method":"account.updatePasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"new_settings","type":"account.PasswordInputSettings"}],"type":"Bool"},{"id":457157256,"method":"account.sendConfirmPhoneCode","params":[{"name":"hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1596029123,"method":"account.confirmPhone","params":[{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1151208273,"method":"account.getTmpPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"period","type":"int"}],"type":"account.TmpPassword"},{"id":405695855,"method":"account.getWebAuthorizations","params":[],"type":"account.WebAuthorizations"},{"id":755087855,"method":"account.resetWebAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1747789204,"method":"account.resetWebAuthorizations","params":[],"type":"Bool"},{"id":-1299661699,"method":"account.getAllSecureValues","params":[],"type":"Vector"},{"id":1936088002,"method":"account.getSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Vector"},{"id":-1986010339,"method":"account.saveSecureValue","params":[{"name":"value","type":"InputSecureValue"},{"name":"secure_secret_id","type":"long"}],"type":"SecureValue"},{"id":-1199522741,"method":"account.deleteSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Bool"},{"id":-1456907910,"method":"account.getAuthorizationForm","params":[{"name":"bot_id","type":"long"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"}],"type":"account.AuthorizationForm"},{"id":-202552205,"method":"account.acceptAuthorization","params":[{"name":"bot_id","type":"long"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"},{"name":"value_hashes","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"Bool"},{"id":-1516022023,"method":"account.sendVerifyPhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1305716726,"method":"account.verifyPhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1880182943,"method":"account.sendVerifyEmailCode","params":[{"name":"email","type":"string"}],"type":"account.SentEmailCode"},{"id":-323339813,"method":"account.verifyEmail","params":[{"name":"email","type":"string"},{"name":"code","type":"string"}],"type":"Bool"},{"id":-262453244,"method":"account.initTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"message_users","type":"flags.1?true"},{"name":"message_chats","type":"flags.2?true"},{"name":"message_megagroups","type":"flags.3?true"},{"name":"message_channels","type":"flags.4?true"},{"name":"files","type":"flags.5?true"},{"name":"file_max_size","type":"flags.5?int"}],"type":"account.Takeout"},{"id":489050862,"method":"account.finishTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.0?true"}],"type":"Bool"},{"id":-1881204448,"method":"account.confirmPasswordEmail","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":2055154197,"method":"account.resendPasswordEmail","params":[],"type":"Bool"},{"id":-1043606090,"method":"account.cancelPasswordEmail","params":[],"type":"Bool"},{"id":-1626880216,"method":"account.getContactSignUpNotification","params":[],"type":"Bool"},{"id":-806076575,"method":"account.setContactSignUpNotification","params":[{"name":"silent","type":"Bool"}],"type":"Bool"},{"id":1398240377,"method":"account.getNotifyExceptions","params":[{"name":"flags","type":"#"},{"name":"compare_sound","type":"flags.1?true"},{"name":"peer","type":"flags.0?InputNotifyPeer"}],"type":"Updates"},{"id":-57811990,"method":"account.getWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"}],"type":"WallPaper"},{"id":-578472351,"method":"account.uploadWallPaper","params":[{"name":"file","type":"InputFile"},{"name":"mime_type","type":"string"},{"name":"settings","type":"WallPaperSettings"}],"type":"WallPaper"},{"id":1817860919,"method":"account.saveWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"unsave","type":"Bool"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-18000023,"method":"account.installWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-1153722364,"method":"account.resetWallPapers","params":[],"type":"Bool"},{"id":1457130303,"method":"account.getAutoDownloadSettings","params":[],"type":"account.AutoDownloadSettings"},{"id":1995661875,"method":"account.saveAutoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"low","type":"flags.0?true"},{"name":"high","type":"flags.1?true"},{"name":"settings","type":"AutoDownloadSettings"}],"type":"Bool"},{"id":473805619,"method":"account.uploadTheme","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.0?InputFile"},{"name":"file_name","type":"string"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":-2077048289,"method":"account.createTheme","params":[{"name":"flags","type":"#"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":1555261397,"method":"account.updateTheme","params":[{"name":"flags","type":"#"},{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"slug","type":"flags.0?string"},{"name":"title","type":"flags.1?string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":-229175188,"method":"account.saveTheme","params":[{"name":"theme","type":"InputTheme"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":2061776695,"method":"account.installTheme","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"format","type":"flags.1?string"},{"name":"theme","type":"flags.1?InputTheme"}],"type":"Bool"},{"id":-1919060949,"method":"account.getTheme","params":[{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"document_id","type":"long"}],"type":"Theme"},{"id":1913054296,"method":"account.getThemes","params":[{"name":"format","type":"string"},{"name":"hash","type":"long"}],"type":"account.Themes"},{"id":-1250643605,"method":"account.setContentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"}],"type":"Bool"},{"id":-1952756306,"method":"account.getContentSettings","params":[],"type":"account.ContentSettings"},{"id":1705865692,"method":"account.getMultiWallPapers","params":[{"name":"wallpapers","type":"Vector"}],"type":"Vector"},{"id":-349483786,"method":"account.getGlobalPrivacySettings","params":[],"type":"GlobalPrivacySettings"},{"id":517647042,"method":"account.setGlobalPrivacySettings","params":[{"name":"settings","type":"GlobalPrivacySettings"}],"type":"GlobalPrivacySettings"},{"id":-91437323,"method":"account.reportProfilePhoto","params":[{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"InputPhoto"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":-1828139493,"method":"account.resetPassword","params":[],"type":"account.ResetPasswordResult"},{"id":1284770294,"method":"account.declinePasswordReset","params":[],"type":"Bool"},{"id":-690545285,"method":"account.getChatThemes","params":[{"name":"hash","type":"int"}],"type":"account.ChatThemes"},{"id":227648840,"method":"users.getUsers","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-902781519,"method":"users.getFullUser","params":[{"name":"id","type":"InputUser"}],"type":"UserFull"},{"id":-1865902923,"method":"users.setSecureValueErrors","params":[{"name":"id","type":"InputUser"},{"name":"errors","type":"Vector"}],"type":"Bool"},{"id":2061264541,"method":"contacts.getContactIDs","params":[{"name":"hash","type":"long"}],"type":"Vector"},{"id":-995929106,"method":"contacts.getStatuses","params":[],"type":"Vector"},{"id":1574346258,"method":"contacts.getContacts","params":[{"name":"hash","type":"long"}],"type":"contacts.Contacts"},{"id":746589157,"method":"contacts.importContacts","params":[{"name":"contacts","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":157945344,"method":"contacts.deleteContacts","params":[{"name":"id","type":"Vector"}],"type":"Updates"},{"id":269745566,"method":"contacts.deleteByPhones","params":[{"name":"phones","type":"Vector"}],"type":"Bool"},{"id":1758204945,"method":"contacts.block","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-1096393392,"method":"contacts.unblock","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-176409329,"method":"contacts.getBlocked","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"contacts.Blocked"},{"id":301470424,"method":"contacts.search","params":[{"name":"q","type":"string"},{"name":"limit","type":"int"}],"type":"contacts.Found"},{"id":-113456221,"method":"contacts.resolveUsername","params":[{"name":"username","type":"string"}],"type":"contacts.ResolvedPeer"},{"id":-1758168906,"method":"contacts.getTopPeers","params":[{"name":"flags","type":"#"},{"name":"correspondents","type":"flags.0?true"},{"name":"bots_pm","type":"flags.1?true"},{"name":"bots_inline","type":"flags.2?true"},{"name":"phone_calls","type":"flags.3?true"},{"name":"forward_users","type":"flags.4?true"},{"name":"forward_chats","type":"flags.5?true"},{"name":"groups","type":"flags.10?true"},{"name":"channels","type":"flags.15?true"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"contacts.TopPeers"},{"id":451113900,"method":"contacts.resetTopPeerRating","params":[{"name":"category","type":"TopPeerCategory"},{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-2020263951,"method":"contacts.resetSaved","params":[],"type":"Bool"},{"id":-2098076769,"method":"contacts.getSaved","params":[],"type":"Vector"},{"id":-2062238246,"method":"contacts.toggleTopPeers","params":[{"name":"enabled","type":"Bool"}],"type":"Bool"},{"id":-386636848,"method":"contacts.addContact","params":[{"name":"flags","type":"#"},{"name":"add_phone_privacy_exception","type":"flags.0?true"},{"name":"id","type":"InputUser"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"phone","type":"string"}],"type":"Updates"},{"id":-130964977,"method":"contacts.acceptContact","params":[{"name":"id","type":"InputUser"}],"type":"Updates"},{"id":-750207932,"method":"contacts.getLocated","params":[{"name":"flags","type":"#"},{"name":"background","type":"flags.1?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"self_expires","type":"flags.0?int"}],"type":"Updates"},{"id":698914348,"method":"contacts.blockFromReplies","params":[{"name":"flags","type":"#"},{"name":"delete_message","type":"flags.0?true"},{"name":"delete_history","type":"flags.1?true"},{"name":"report_spam","type":"flags.2?true"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1673946374,"method":"messages.getMessages","params":[{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1594569905,"method":"messages.getDialogs","params":[{"name":"flags","type":"#"},{"name":"exclude_pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"offset_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Dialogs"},{"id":1143203525,"method":"messages.getHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":-1593989278,"method":"messages.search","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"q","type":"string"},{"name":"from_id","type":"flags.0?InputPeer"},{"name":"top_msg_id","type":"flags.1?int"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":238054714,"method":"messages.readHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedMessages"},{"id":469850889,"method":"messages.deleteHistory","params":[{"name":"flags","type":"#"},{"name":"just_clear","type":"flags.0?true"},{"name":"revoke","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedHistory"},{"id":-443640366,"method":"messages.deleteMessages","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":94983360,"method":"messages.receivedMessages","params":[{"name":"max_id","type":"int"}],"type":"Vector"},{"id":1486110434,"method":"messages.setTyping","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"action","type":"SendMessageAction"}],"type":"Bool"},{"id":1376532592,"method":"messages.sendMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":881978281,"method":"messages.sendMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"media","type":"InputMedia"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-637606386,"method":"messages.forwardMessages","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"with_my_score","type":"flags.8?true"},{"name":"drop_author","type":"flags.11?true"},{"name":"drop_media_captions","type":"flags.12?true"},{"name":"from_peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"random_id","type":"Vector"},{"name":"to_peer","type":"InputPeer"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-820669733,"method":"messages.reportSpam","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":913498268,"method":"messages.getPeerSettings","params":[{"name":"peer","type":"InputPeer"}],"type":"PeerSettings"},{"id":-1991005362,"method":"messages.report","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1240027791,"method":"messages.getChats","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":-1364194508,"method":"messages.getFullChat","params":[{"name":"chat_id","type":"long"}],"type":"messages.ChatFull"},{"id":1937260541,"method":"messages.editChatTitle","params":[{"name":"chat_id","type":"long"},{"name":"title","type":"string"}],"type":"Updates"},{"id":903730804,"method":"messages.editChatPhoto","params":[{"name":"chat_id","type":"long"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":-230206493,"method":"messages.addChatUser","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"},{"name":"fwd_limit","type":"int"}],"type":"Updates"},{"id":-1575461717,"method":"messages.deleteChatUser","params":[{"name":"flags","type":"#"},{"name":"revoke_history","type":"flags.0?true"},{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"}],"type":"Updates"},{"id":164303470,"method":"messages.createChat","params":[{"name":"users","type":"Vector"},{"name":"title","type":"string"}],"type":"Updates"},{"id":651135312,"method":"messages.getDhConfig","params":[{"name":"version","type":"int"},{"name":"random_length","type":"int"}],"type":"messages.DhConfig"},{"id":-162681021,"method":"messages.requestEncryption","params":[{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1035731989,"method":"messages.acceptEncryption","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"g_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":-208425312,"method":"messages.discardEncryption","params":[{"name":"flags","type":"#"},{"name":"delete_history","type":"flags.0?true"},{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":2031374829,"method":"messages.setEncryptedTyping","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"typing","type":"Bool"}],"type":"Bool"},{"id":2135648522,"method":"messages.readEncryptedHistory","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"max_date","type":"int"}],"type":"Bool"},{"id":1157265941,"method":"messages.sendEncrypted","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1431914525,"method":"messages.sendEncryptedFile","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"},{"name":"file","type":"InputEncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":852769188,"method":"messages.sendEncryptedService","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1436924774,"method":"messages.receivedQueue","params":[{"name":"max_qts","type":"int"}],"type":"Vector"},{"id":1259113487,"method":"messages.reportEncryptedSpam","params":[{"name":"peer","type":"InputEncryptedChat"}],"type":"Bool"},{"id":916930423,"method":"messages.readMessageContents","params":[{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":-710552671,"method":"messages.getStickers","params":[{"name":"emoticon","type":"string"},{"name":"hash","type":"long"}],"type":"messages.Stickers"},{"id":-1197432408,"method":"messages.getAllStickers","params":[{"name":"hash","type":"long"}],"type":"messages.AllStickers"},{"id":-1956073268,"method":"messages.getWebPagePreview","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"MessageMedia"},{"id":347716823,"method":"messages.exportChatInvite","params":[{"name":"flags","type":"#"},{"name":"legacy_revoke_permanent","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"ExportedChatInvite"},{"id":1051570619,"method":"messages.checkChatInvite","params":[{"name":"hash","type":"string"}],"type":"ChatInvite"},{"id":1817183516,"method":"messages.importChatInvite","params":[{"name":"hash","type":"string"}],"type":"Updates"},{"id":639215886,"method":"messages.getStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"messages.StickerSet"},{"id":-946871200,"method":"messages.installStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"archived","type":"Bool"}],"type":"messages.StickerSetInstallResult"},{"id":-110209570,"method":"messages.uninstallStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":-421563528,"method":"messages.startBot","params":[{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"long"},{"name":"start_param","type":"string"}],"type":"Updates"},{"id":1468322785,"method":"messages.getMessagesViews","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"increment","type":"Bool"}],"type":"messages.MessageViews"},{"id":-1470377534,"method":"messages.editChatAdmin","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"},{"name":"is_admin","type":"Bool"}],"type":"Bool"},{"id":-1568189671,"method":"messages.migrateChat","params":[{"name":"chat_id","type":"long"}],"type":"Updates"},{"id":1271290010,"method":"messages.searchGlobal","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"q","type":"string"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":2016638777,"method":"messages.reorderStickerSets","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":864953444,"method":"messages.getDocumentByHash","params":[{"name":"sha256","type":"bytes"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":1559270965,"method":"messages.getSavedGifs","params":[{"name":"hash","type":"long"}],"type":"messages.SavedGifs"},{"id":846868683,"method":"messages.saveGif","params":[{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":1364105629,"method":"messages.getInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"geo_point","type":"flags.0?InputGeoPoint"},{"name":"query","type":"string"},{"name":"offset","type":"string"}],"type":"messages.BotResults"},{"id":-346119674,"method":"messages.setInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"private","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"next_offset","type":"flags.2?string"},{"name":"switch_pm","type":"flags.3?InlineBotSwitchPM"}],"type":"Bool"},{"id":570955184,"method":"messages.sendInlineBotResult","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"hide_via","type":"flags.11?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"random_id","type":"long"},{"name":"query_id","type":"long"},{"name":"id","type":"string"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-39416522,"method":"messages.getMessageEditData","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"messages.MessageEditData"},{"id":1224152952,"method":"messages.editMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.15?int"}],"type":"Updates"},{"id":-2091549254,"method":"messages.editInlineBotMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":-1824339449,"method":"messages.getBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"game","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"data","type":"flags.0?bytes"},{"name":"password","type":"flags.2?InputCheckPasswordSRP"}],"type":"messages.BotCallbackAnswer"},{"id":-712043766,"method":"messages.setBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"Bool"},{"id":-462373635,"method":"messages.getPeerDialogs","params":[{"name":"peers","type":"Vector"}],"type":"messages.PeerDialogs"},{"id":-1137057461,"method":"messages.saveDraft","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"peer","type":"InputPeer"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":1782549861,"method":"messages.getAllDrafts","params":[],"type":"Updates"},{"id":1685588756,"method":"messages.getFeaturedStickers","params":[{"name":"hash","type":"long"}],"type":"messages.FeaturedStickers"},{"id":1527873830,"method":"messages.readFeaturedStickers","params":[{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1649852357,"method":"messages.getRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"hash","type":"long"}],"type":"messages.RecentStickers"},{"id":958863608,"method":"messages.saveRecentSticker","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":-1986437075,"method":"messages.clearRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"}],"type":"Bool"},{"id":1475442322,"method":"messages.getArchivedStickers","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"offset_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.ArchivedStickers"},{"id":1678738104,"method":"messages.getMaskStickers","params":[{"name":"hash","type":"long"}],"type":"messages.AllStickers"},{"id":-866424884,"method":"messages.getAttachedStickers","params":[{"name":"media","type":"InputStickeredMedia"}],"type":"Vector"},{"id":-1896289088,"method":"messages.setGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Updates"},{"id":363700068,"method":"messages.setInlineGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Bool"},{"id":-400399203,"method":"messages.getGameHighScores","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":258170395,"method":"messages.getInlineGameHighScores","params":[{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":-468934396,"method":"messages.getCommonChats","params":[{"name":"user_id","type":"InputUser"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.Chats"},{"id":-2023787330,"method":"messages.getAllChats","params":[{"name":"except_ids","type":"Vector"}],"type":"messages.Chats"},{"id":852135825,"method":"messages.getWebPage","params":[{"name":"url","type":"string"},{"name":"hash","type":"int"}],"type":"WebPage"},{"id":-1489903017,"method":"messages.toggleDialogPin","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":991616823,"method":"messages.reorderPinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"folder_id","type":"int"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":-692498958,"method":"messages.getPinnedDialogs","params":[{"name":"folder_id","type":"int"}],"type":"messages.PeerDialogs"},{"id":-436833542,"method":"messages.setBotShippingResults","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"Bool"},{"id":163765653,"method":"messages.setBotPrecheckoutResults","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"}],"type":"Bool"},{"id":1369162417,"method":"messages.uploadMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":-914493408,"method":"messages.sendScreenshotNotification","params":[{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"int"},{"name":"random_id","type":"long"}],"type":"Updates"},{"id":82946729,"method":"messages.getFavedStickers","params":[{"name":"hash","type":"long"}],"type":"messages.FavedStickers"},{"id":-1174420133,"method":"messages.faveSticker","params":[{"name":"id","type":"InputDocument"},{"name":"unfave","type":"Bool"}],"type":"Bool"},{"id":1180140658,"method":"messages.getUnreadMentions","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"}],"type":"messages.Messages"},{"id":251759059,"method":"messages.readMentions","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1881817312,"method":"messages.getRecentLocations","params":[{"name":"peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":-872345397,"method":"messages.sendMultiMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"multi_media","type":"Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":1347929239,"method":"messages.uploadEncryptedFile","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"file","type":"InputEncryptedFile"}],"type":"EncryptedFile"},{"id":896555914,"method":"messages.searchStickerSets","params":[{"name":"flags","type":"#"},{"name":"exclude_featured","type":"flags.0?true"},{"name":"q","type":"string"},{"name":"hash","type":"long"}],"type":"messages.FoundStickerSets"},{"id":486505992,"method":"messages.getSplitRanges","params":[],"type":"Vector"},{"id":-1031349873,"method":"messages.markDialogUnread","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":585256482,"method":"messages.getDialogUnreadMarks","params":[],"type":"Vector"},{"id":2119757468,"method":"messages.clearAllDrafts","params":[],"type":"Bool"},{"id":-760547348,"method":"messages.updatePinnedMessage","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"unpin","type":"flags.1?true"},{"name":"pm_oneside","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"Updates"},{"id":283795844,"method":"messages.sendVote","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"options","type":"Vector"}],"type":"Updates"},{"id":1941660731,"method":"messages.getPollResults","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1848369232,"method":"messages.getOnlines","params":[{"name":"peer","type":"InputPeer"}],"type":"ChatOnlines"},{"id":-2127811866,"method":"messages.getStatsURL","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"params","type":"string"}],"type":"StatsURL"},{"id":-554301545,"method":"messages.editChatAbout","params":[{"name":"peer","type":"InputPeer"},{"name":"about","type":"string"}],"type":"Bool"},{"id":-1517917375,"method":"messages.editChatDefaultBannedRights","params":[{"name":"peer","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":899735650,"method":"messages.getEmojiKeywords","params":[{"name":"lang_code","type":"string"}],"type":"EmojiKeywordsDifference"},{"id":352892591,"method":"messages.getEmojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"EmojiKeywordsDifference"},{"id":1318675378,"method":"messages.getEmojiKeywordsLanguages","params":[{"name":"lang_codes","type":"Vector"}],"type":"Vector"},{"id":-709817306,"method":"messages.getEmojiURL","params":[{"name":"lang_code","type":"string"}],"type":"EmojiURL"},{"id":1932455680,"method":"messages.getSearchCounters","params":[{"name":"peer","type":"InputPeer"},{"name":"filters","type":"Vector"}],"type":"Vector"},{"id":428848198,"method":"messages.requestUrlAuth","params":[{"name":"flags","type":"#"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":-1322487515,"method":"messages.acceptUrlAuth","params":[{"name":"flags","type":"#"},{"name":"write_allowed","type":"flags.0?true"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":1336717624,"method":"messages.hidePeerSettingsBar","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-183077365,"method":"messages.getScheduledHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":-1111817116,"method":"messages.getScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1120369398,"method":"messages.sendScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":1504586518,"method":"messages.deleteScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":-1200736242,"method":"messages.getPollVotes","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"option","type":"flags.0?bytes"},{"name":"offset","type":"flags.1?string"},{"name":"limit","type":"int"}],"type":"messages.VotesList"},{"id":-1257951254,"method":"messages.toggleStickerSets","params":[{"name":"flags","type":"#"},{"name":"uninstall","type":"flags.0?true"},{"name":"archive","type":"flags.1?true"},{"name":"unarchive","type":"flags.2?true"},{"name":"stickersets","type":"Vector"}],"type":"Bool"},{"id":-241247891,"method":"messages.getDialogFilters","params":[],"type":"Vector"},{"id":-1566780372,"method":"messages.getSuggestedDialogFilters","params":[],"type":"Vector"},{"id":450142282,"method":"messages.updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Bool"},{"id":-983318044,"method":"messages.updateDialogFiltersOrder","params":[{"name":"order","type":"Vector"}],"type":"Bool"},{"id":2127598753,"method":"messages.getOldFeaturedStickers","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.FeaturedStickers"},{"id":584962828,"method":"messages.getReplies","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":1147761405,"method":"messages.getDiscussionMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"messages.DiscussionMessage"},{"id":-147740172,"method":"messages.readDiscussion","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Bool"},{"id":-265962357,"method":"messages.unpinAllMessages","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1540419152,"method":"messages.deleteChat","params":[{"name":"chat_id","type":"long"}],"type":"Bool"},{"id":-104078327,"method":"messages.deletePhoneCallHistory","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"}],"type":"messages.AffectedFoundMessages"},{"id":1140726259,"method":"messages.checkHistoryImport","params":[{"name":"import_head","type":"string"}],"type":"messages.HistoryImportParsed"},{"id":873008187,"method":"messages.initHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"file","type":"InputFile"},{"name":"media_count","type":"int"}],"type":"messages.HistoryImport"},{"id":713433234,"method":"messages.uploadImportedMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"},{"name":"file_name","type":"string"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":-1271008444,"method":"messages.startHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"}],"type":"Bool"},{"id":-1565154314,"method":"messages.getExportedChatInvites","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.3?true"},{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"},{"name":"offset_date","type":"flags.2?int"},{"name":"offset_link","type":"flags.2?string"},{"name":"limit","type":"int"}],"type":"messages.ExportedChatInvites"},{"id":1937010524,"method":"messages.getExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"messages.ExportedChatInvite"},{"id":48562110,"method":"messages.editExportedChatInvite","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"messages.ExportedChatInvite"},{"id":1452833749,"method":"messages.deleteRevokedExportedChatInvites","params":[{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"}],"type":"Bool"},{"id":-731601877,"method":"messages.deleteExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"Bool"},{"id":958457583,"method":"messages.getAdminsWithInvites","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.ChatAdminsWithInvites"},{"id":654013065,"method":"messages.getChatInviteImporters","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"offset_date","type":"int"},{"name":"offset_user","type":"InputUser"},{"name":"limit","type":"int"}],"type":"messages.ChatInviteImporters"},{"id":-1207017500,"method":"messages.setHistoryTTL","params":[{"name":"peer","type":"InputPeer"},{"name":"period","type":"int"}],"type":"Updates"},{"id":1573261059,"method":"messages.checkHistoryImportPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-432283329,"method":"messages.setChatTheme","params":[{"name":"peer","type":"InputPeer"},{"name":"emoticon","type":"string"}],"type":"Updates"},{"id":745510839,"method":"messages.getMessageReadParticipants","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Vector"},{"id":-304838614,"method":"updates.getState","params":[],"type":"updates.State"},{"id":630429265,"method":"updates.getDifference","params":[{"name":"flags","type":"#"},{"name":"pts","type":"int"},{"name":"pts_total_limit","type":"flags.0?int"},{"name":"date","type":"int"},{"name":"qts","type":"int"}],"type":"updates.Difference"},{"id":51854712,"method":"updates.getChannelDifference","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelMessagesFilter"},{"name":"pts","type":"int"},{"name":"limit","type":"int"}],"type":"updates.ChannelDifference"},{"id":1926525996,"method":"photos.updateProfilePhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"photos.Photo"},{"id":-1980559511,"method":"photos.uploadProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"photos.Photo"},{"id":-2016444625,"method":"photos.deletePhotos","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-1848823128,"method":"photos.getUserPhotos","params":[{"name":"user_id","type":"InputUser"},{"name":"offset","type":"int"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"photos.Photos"},{"id":-1291540959,"method":"upload.saveFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":-1319462148,"method":"upload.getFile","params":[{"name":"flags","type":"#"},{"name":"precise","type":"flags.0?true"},{"name":"cdn_supported","type":"flags.1?true"},{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.File"},{"id":-562337987,"method":"upload.saveBigFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"file_total_parts","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":619086221,"method":"upload.getWebFile","params":[{"name":"location","type":"InputWebFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.WebFile"},{"id":536919235,"method":"upload.getCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.CdnFile"},{"id":-1691921240,"method":"upload.reuploadCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"request_token","type":"bytes"}],"type":"Vector"},{"id":1302676017,"method":"upload.getCdnFileHashes","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":-956147407,"method":"upload.getFileHashes","params":[{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":-990308245,"method":"help.getConfig","params":[],"type":"Config"},{"id":531836966,"method":"help.getNearestDc","params":[],"type":"NearestDc"},{"id":1378703997,"method":"help.getAppUpdate","params":[{"name":"source","type":"string"}],"type":"help.AppUpdate"},{"id":1295590211,"method":"help.getInviteText","params":[],"type":"help.InviteText"},{"id":-1663104819,"method":"help.getSupport","params":[],"type":"help.Support"},{"id":-1877938321,"method":"help.getAppChangelog","params":[{"name":"prev_app_version","type":"string"}],"type":"Updates"},{"id":-333262899,"method":"help.setBotUpdatesStatus","params":[{"name":"pending_updates_count","type":"int"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1375900482,"method":"help.getCdnConfig","params":[],"type":"CdnConfig"},{"id":1036054804,"method":"help.getRecentMeUrls","params":[{"name":"referer","type":"string"}],"type":"help.RecentMeUrls"},{"id":749019089,"method":"help.getTermsOfServiceUpdate","params":[],"type":"help.TermsOfServiceUpdate"},{"id":-294455398,"method":"help.acceptTermsOfService","params":[{"name":"id","type":"DataJSON"}],"type":"Bool"},{"id":1072547679,"method":"help.getDeepLinkInfo","params":[{"name":"path","type":"string"}],"type":"help.DeepLinkInfo"},{"id":-1735311088,"method":"help.getAppConfig","params":[],"type":"JSONValue"},{"id":1862465352,"method":"help.saveAppLog","params":[{"name":"events","type":"Vector"}],"type":"Bool"},{"id":-966677240,"method":"help.getPassportConfig","params":[{"name":"hash","type":"int"}],"type":"help.PassportConfig"},{"id":-748624084,"method":"help.getSupportName","params":[],"type":"help.SupportName"},{"id":59377875,"method":"help.getUserInfo","params":[{"name":"user_id","type":"InputUser"}],"type":"help.UserInfo"},{"id":1723407216,"method":"help.editUserInfo","params":[{"name":"user_id","type":"InputUser"},{"name":"message","type":"string"},{"name":"entities","type":"Vector"}],"type":"help.UserInfo"},{"id":-1063816159,"method":"help.getPromoData","params":[],"type":"help.PromoData"},{"id":505748629,"method":"help.hidePromoData","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-183649631,"method":"help.dismissSuggestion","params":[{"name":"peer","type":"InputPeer"},{"name":"suggestion","type":"string"}],"type":"Bool"},{"id":1935116200,"method":"help.getCountriesList","params":[{"name":"lang_code","type":"string"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":-871347913,"method":"channels.readHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":-2067661490,"method":"channels.deleteMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":-787622117,"method":"channels.deleteUserHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"}],"type":"messages.AffectedHistory"},{"id":-32999408,"method":"channels.reportSpam","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1383294429,"method":"channels.getMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":2010044880,"method":"channels.getParticipants","params":[{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelParticipantsFilter"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"channels.ChannelParticipants"},{"id":-1599378234,"method":"channels.getParticipant","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"}],"type":"channels.ChannelParticipant"},{"id":176122811,"method":"channels.getChannels","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":141781513,"method":"channels.getFullChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.ChatFull"},{"id":1029681423,"method":"channels.createChannel","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.0?true"},{"name":"megagroup","type":"flags.1?true"},{"name":"for_import","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"about","type":"string"},{"name":"geo_point","type":"flags.2?InputGeoPoint"},{"name":"address","type":"flags.2?string"}],"type":"Updates"},{"id":-751007486,"method":"channels.editAdmin","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"string"}],"type":"Updates"},{"id":1450044624,"method":"channels.editTitle","params":[{"name":"channel","type":"InputChannel"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-248621111,"method":"channels.editPhoto","params":[{"name":"channel","type":"InputChannel"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":283557164,"method":"channels.checkUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":890549214,"method":"channels.updateUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":615851205,"method":"channels.joinChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-130635115,"method":"channels.leaveChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":429865580,"method":"channels.inviteToChannel","params":[{"name":"channel","type":"InputChannel"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":-1072619549,"method":"channels.deleteChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-432034325,"method":"channels.exportMessageLink","params":[{"name":"flags","type":"#"},{"name":"grouped","type":"flags.0?true"},{"name":"thread","type":"flags.1?true"},{"name":"channel","type":"InputChannel"},{"name":"id","type":"int"}],"type":"ExportedMessageLink"},{"id":527021574,"method":"channels.toggleSignatures","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":-122669393,"method":"channels.getAdminedPublicChannels","params":[{"name":"flags","type":"#"},{"name":"by_location","type":"flags.0?true"},{"name":"check_limit","type":"flags.1?true"}],"type":"messages.Chats"},{"id":-1763259007,"method":"channels.editBanned","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":870184064,"method":"channels.getAdminLog","params":[{"name":"flags","type":"#"},{"name":"channel","type":"InputChannel"},{"name":"q","type":"string"},{"name":"events_filter","type":"flags.0?ChannelAdminLogEventsFilter"},{"name":"admins","type":"flags.1?Vector"},{"name":"max_id","type":"long"},{"name":"min_id","type":"long"},{"name":"limit","type":"int"}],"type":"channels.AdminLogResults"},{"id":-359881479,"method":"channels.setStickers","params":[{"name":"channel","type":"InputChannel"},{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":-357180360,"method":"channels.readMessageContents","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1355375294,"method":"channels.deleteHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":-356796084,"method":"channels.togglePreHistoryHidden","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":-2092831552,"method":"channels.getLeftChannels","params":[{"name":"offset","type":"int"}],"type":"messages.Chats"},{"id":-170208392,"method":"channels.getGroupsForDiscussion","params":[],"type":"messages.Chats"},{"id":1079520178,"method":"channels.setDiscussionGroup","params":[{"name":"broadcast","type":"InputChannel"},{"name":"group","type":"InputChannel"}],"type":"Bool"},{"id":-1892102881,"method":"channels.editCreator","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"password","type":"InputCheckPasswordSRP"}],"type":"Updates"},{"id":1491484525,"method":"channels.editLocation","params":[{"name":"channel","type":"InputChannel"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"address","type":"string"}],"type":"Bool"},{"id":-304832784,"method":"channels.toggleSlowMode","params":[{"name":"channel","type":"InputChannel"},{"name":"seconds","type":"int"}],"type":"Updates"},{"id":300429806,"method":"channels.getInactiveChannels","params":[],"type":"messages.InactiveChats"},{"id":187239529,"method":"channels.convertToGigagroup","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-1095836780,"method":"channels.viewSponsoredMessage","params":[{"name":"channel","type":"InputChannel"},{"name":"random_id","type":"bytes"}],"type":"Bool"},{"id":-333377601,"method":"channels.getSponsoredMessages","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.SponsoredMessages"},{"id":-1440257555,"method":"bots.sendCustomRequest","params":[{"name":"custom_method","type":"string"},{"name":"params","type":"DataJSON"}],"type":"DataJSON"},{"id":-434028723,"method":"bots.answerWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"}],"type":"Bool"},{"id":85399130,"method":"bots.setBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"},{"name":"commands","type":"Vector"}],"type":"Bool"},{"id":1032708345,"method":"bots.resetBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Bool"},{"id":-481554986,"method":"bots.getBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Vector"},{"id":-1976353651,"method":"payments.getPaymentForm","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"theme_params","type":"flags.0?DataJSON"}],"type":"payments.PaymentForm"},{"id":611897804,"method":"payments.getPaymentReceipt","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"payments.PaymentReceipt"},{"id":-619695760,"method":"payments.validateRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"info","type":"PaymentRequestedInfo"}],"type":"payments.ValidatedRequestedInfo"},{"id":818134173,"method":"payments.sendPaymentForm","params":[{"name":"flags","type":"#"},{"name":"form_id","type":"long"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"requested_info_id","type":"flags.0?string"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"credentials","type":"InputPaymentCredentials"},{"name":"tip_amount","type":"flags.2?long"}],"type":"payments.PaymentResult"},{"id":578650699,"method":"payments.getSavedInfo","params":[],"type":"payments.SavedInfo"},{"id":-667062079,"method":"payments.clearSavedInfo","params":[{"name":"flags","type":"#"},{"name":"credentials","type":"flags.0?true"},{"name":"info","type":"flags.1?true"}],"type":"Bool"},{"id":779736953,"method":"payments.getBankCardData","params":[{"name":"number","type":"string"}],"type":"payments.BankCardData"},{"id":-1876841625,"method":"stickers.createStickerSet","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"animated","type":"flags.1?true"},{"name":"user_id","type":"InputUser"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumb","type":"flags.2?InputDocument"},{"name":"stickers","type":"Vector"},{"name":"software","type":"flags.3?string"}],"type":"messages.StickerSet"},{"id":-143257775,"method":"stickers.removeStickerFromSet","params":[{"name":"sticker","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":-4795190,"method":"stickers.changeStickerPosition","params":[{"name":"sticker","type":"InputDocument"},{"name":"position","type":"int"}],"type":"messages.StickerSet"},{"id":-2041315650,"method":"stickers.addStickerToSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"sticker","type":"InputStickerSetItem"}],"type":"messages.StickerSet"},{"id":-1707717072,"method":"stickers.setStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":676017721,"method":"stickers.checkShortName","params":[{"name":"short_name","type":"string"}],"type":"Bool"},{"id":1303364867,"method":"stickers.suggestShortName","params":[{"name":"title","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":1430593449,"method":"phone.getCallConfig","params":[],"type":"DataJSON"},{"id":1124046573,"method":"phone.requestCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":1003664544,"method":"phone.acceptCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":788404002,"method":"phone.confirmCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_a","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":399855457,"method":"phone.receivedCall","params":[{"name":"peer","type":"InputPhoneCall"}],"type":"Bool"},{"id":-1295269440,"method":"phone.discardCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"duration","type":"int"},{"name":"reason","type":"PhoneCallDiscardReason"},{"name":"connection_id","type":"long"}],"type":"Updates"},{"id":1508562471,"method":"phone.setCallRating","params":[{"name":"flags","type":"#"},{"name":"user_initiative","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"rating","type":"int"},{"name":"comment","type":"string"}],"type":"Updates"},{"id":662363518,"method":"phone.saveCallDebug","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"debug","type":"DataJSON"}],"type":"Bool"},{"id":-8744061,"method":"phone.sendSignalingData","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"data","type":"bytes"}],"type":"Bool"},{"id":1221445336,"method":"phone.createGroupCall","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"schedule_date","type":"flags.1?int"}],"type":"Updates"},{"id":-1322057861,"method":"phone.joinGroupCall","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"video_stopped","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_as","type":"InputPeer"},{"name":"invite_hash","type":"flags.1?string"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":1342404601,"method":"phone.leaveGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"source","type":"int"}],"type":"Updates"},{"id":2067345760,"method":"phone.inviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":2054648117,"method":"phone.discardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1958458429,"method":"phone.toggleGroupCallSettings","params":[{"name":"flags","type":"#"},{"name":"reset_invite_hash","type":"flags.1?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_muted","type":"flags.0?Bool"}],"type":"Updates"},{"id":68699611,"method":"phone.getGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"limit","type":"int"}],"type":"phone.GroupCall"},{"id":-984033109,"method":"phone.getGroupParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"ids","type":"Vector"},{"name":"sources","type":"Vector"},{"name":"offset","type":"string"},{"name":"limit","type":"int"}],"type":"phone.GroupParticipants"},{"id":-1248003721,"method":"phone.checkGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"sources","type":"Vector"}],"type":"Vector"},{"id":-248985848,"method":"phone.toggleGroupCallRecord","params":[{"name":"flags","type":"#"},{"name":"start","type":"flags.0?true"},{"name":"video","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"title","type":"flags.1?string"},{"name":"video_portrait","type":"flags.2?Bool"}],"type":"Updates"},{"id":-1524155713,"method":"phone.editGroupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"participant","type":"InputPeer"},{"name":"muted","type":"flags.0?Bool"},{"name":"volume","type":"flags.1?int"},{"name":"raise_hand","type":"flags.2?Bool"},{"name":"video_stopped","type":"flags.3?Bool"},{"name":"video_paused","type":"flags.4?Bool"},{"name":"presentation_paused","type":"flags.5?Bool"}],"type":"Updates"},{"id":480685066,"method":"phone.editGroupCallTitle","params":[{"name":"call","type":"InputGroupCall"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-277077702,"method":"phone.getGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"}],"type":"phone.JoinAsPeers"},{"id":-425040769,"method":"phone.exportGroupCallInvite","params":[{"name":"flags","type":"#"},{"name":"can_self_unmute","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"}],"type":"phone.ExportedGroupCallInvite"},{"id":563885286,"method":"phone.toggleGroupCallStartSubscription","params":[{"name":"call","type":"InputGroupCall"},{"name":"subscribed","type":"Bool"}],"type":"Updates"},{"id":1451287362,"method":"phone.startScheduledGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1465786252,"method":"phone.saveDefaultGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"},{"name":"join_as","type":"InputPeer"}],"type":"Bool"},{"id":-873829436,"method":"phone.joinGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":475058500,"method":"phone.leaveGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":-219008246,"method":"langpack.getLangPack","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackDifference"},{"id":-269862909,"method":"langpack.getStrings","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"keys","type":"Vector"}],"type":"Vector"},{"id":-845657435,"method":"langpack.getDifference","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"LangPackDifference"},{"id":1120311183,"method":"langpack.getLanguages","params":[{"name":"lang_pack","type":"string"}],"type":"Vector"},{"id":1784243458,"method":"langpack.getLanguage","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackLanguage"},{"id":1749536939,"method":"folders.editPeerFolders","params":[{"name":"folder_peers","type":"Vector"}],"type":"Updates"},{"id":472471681,"method":"folders.deleteFolder","params":[{"name":"folder_id","type":"int"}],"type":"Updates"},{"id":-1421720550,"method":"stats.getBroadcastStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.BroadcastStats"},{"id":1646092192,"method":"stats.loadAsyncGraph","params":[{"name":"flags","type":"#"},{"name":"token","type":"string"},{"name":"x","type":"flags.0?long"}],"type":"StatsGraph"},{"id":-589330937,"method":"stats.getMegagroupStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.MegagroupStats"},{"id":1445996571,"method":"stats.getMessagePublicForwards","params":[{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":-1226791947,"method":"stats.getMessageStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"}],"type":"stats.MessageStats"}]},"layer":133} as { MTProto: { constructors: MTProtoConstructor[], methods: MTProtoMethod[], diff --git a/src/lib/mtproto/tl_utils.ts b/src/lib/mtproto/tl_utils.ts index 440b5fa9..69bba4a1 100644 --- a/src/lib/mtproto/tl_utils.ts +++ b/src/lib/mtproto/tl_utils.ts @@ -443,7 +443,7 @@ class TLSerialization { } } -class TLDeserialization { +class TLDeserialization { private offset = 0; // in bytes private override: {[key: string]: (result: any, field: string) => void}; @@ -469,8 +469,8 @@ class TLDeserialization { //console.log(this.intView); - this.override = 'override' in options ? options.override : {}; - this.mtproto = 'mtproto' in options ? options.mtproto : false; + this.override = options.override || {}; + this.mtproto = !!options.mtproto; this.debug = options.debug !== undefined ? options.debug : /* Modes.debug */false; } @@ -509,13 +509,22 @@ class TLDeserialization { return doubleView[0]; } - public fetchLong(field?: string): string { + public fetchLong(field?: string): FetchLongAs { const iLow = this.readInt((field || '') + ':long[low]'); const iHigh = this.readInt((field || '') + ':long[high]'); //const longDec = bigint(iHigh).shiftLeft(32).add(bigint(iLow)).toString(); const longDec = longFromInts(iHigh, iLow); + + if(!this.mtproto) { + const num = +longDec; + if(Number.isSafeInteger(num)) { + // @ts-ignore + return num; + } + } + // @ts-ignore return longDec; } @@ -700,7 +709,7 @@ class TLDeserialization { if(constructorCmp === gzipPacked) { // Gzip packed const compressed = this.fetchBytes(field + '[packed_string]'); const uncompressed = gzipUncompress(compressed) as Uint8Array; - const newDeserializer = new TLDeserialization(uncompressed); + const newDeserializer = new TLDeserialization(uncompressed); // rpc_result is packed here return newDeserializer.fetchObject(type, field); } diff --git a/src/lib/polyfill.ts b/src/lib/polyfill.ts index a6ef2c7d..d2b13279 100644 --- a/src/lib/polyfill.ts +++ b/src/lib/polyfill.ts @@ -75,6 +75,10 @@ Promise.prototype.finally = Promise.prototype.finally || function(this: Promi ); }; +Promise.prototype.safeFinally = function(this: Promise, fn: () => any) { + return this.catch(() => {}).finally(fn); +}; + declare global { interface Uint8Array { hex: string; @@ -95,5 +99,6 @@ declare global { interface Promise { finally: (onfinally?: () => void) => Promise; + safeFinally: (onfinally?: () => void) => Promise; } } diff --git a/src/lib/richtextprocessor.ts b/src/lib/richtextprocessor.ts index fa2e5746..7096e35a 100644 --- a/src/lib/richtextprocessor.ts +++ b/src/lib/richtextprocessor.ts @@ -305,7 +305,7 @@ namespace RichTextProcessor { } else if(match[11]) { // custom mention entity = { _: 'messageEntityMentionName', - user_id: +match[10], + user_id: match[10], offset: matchIndex, length: text.length }; diff --git a/src/lib/rootScope.ts b/src/lib/rootScope.ts index 946a7d8e..6d76ddbc 100644 --- a/src/lib/rootScope.ts +++ b/src/lib/rootScope.ts @@ -4,14 +4,14 @@ * https://github.com/morethanwords/tweb/blob/master/LICENSE */ -import type { Message, StickerSet, Update, NotifyPeer, PeerNotifySettings, ConstructorDeclMap, Config } from "../layer"; +import type { Message, StickerSet, Update, NotifyPeer, PeerNotifySettings, ConstructorDeclMap, Config, PollResults, Poll, WebPage } from "../layer"; import type { MyDocument } from "./appManagers/appDocsManager"; -import type { AppMessagesManager, Dialog, MessagesStorage } from "./appManagers/appMessagesManager"; -import type { Poll, PollResults } from "./appManagers/appPollsManager"; +import type { AppMessagesManager, Dialog, MessagesStorage, MyMessage } from "./appManagers/appMessagesManager"; import type { MyDialogFilter } from "./storages/filters"; +import type { Folder } from "./storages/dialogs"; import type { UserTyping } from "./appManagers/appProfileManager"; import type Chat from "../components/chat/chat"; -import type { UserAuth } from "./mtproto/mtproto_config"; +import { NULL_PEER_ID, UserAuth } from "./mtproto/mtproto_config"; import type { State, Theme } from "./appManagers/appStateManager"; import type { MyDraftMessage } from "./appManagers/appDraftsManager"; import type { PushSubscriptionNotify } from "./mtproto/webPushApiManager"; @@ -21,56 +21,57 @@ import EventListenerBase from "../helpers/eventListenerBase"; import { MOUNT_CLASS_TO } from "../config/debug"; export type BroadcastEvents = { - 'user_update': number, + 'user_update': UserId, 'user_auth': UserAuth, - 'peer_changed': number, + 'peer_changed': PeerId, 'peer_changing': Chat, - 'peer_pinned_messages': {peerId: number, mids?: number[], pinned?: boolean, unpinAll?: true}, - 'peer_pinned_hidden': {peerId: number, maxId: number}, - 'peer_typings': {peerId: number, typings: UserTyping[]}, - 'peer_block': {peerId: number, blocked: boolean}, - 'peer_title_edit': number, - 'peer_bio_edit': number, + 'peer_pinned_messages': {peerId: PeerId, mids?: number[], pinned?: boolean, unpinAll?: true}, + 'peer_pinned_hidden': {peerId: PeerId, maxId: number}, + 'peer_typings': {peerId: PeerId, typings: UserTyping[]}, + 'peer_block': {peerId: PeerId, blocked: boolean}, + 'peer_title_edit': PeerId, + 'peer_bio_edit': PeerId, 'filter_delete': MyDialogFilter, 'filter_update': MyDialogFilter, 'filter_order': number[], + + 'folder_unread': Folder, - 'dialog_draft': {peerId: number, dialog: Dialog, drop: boolean, draft: MyDraftMessage | undefined, index: number}, - 'dialog_unread': {peerId: number}, - 'dialog_flush': {peerId: number}, - 'dialog_drop': {peerId: number, dialog?: Dialog}, - 'dialog_migrate': {migrateFrom: number, migrateTo: number}, + 'dialog_draft': {peerId: PeerId, dialog: Dialog, drop: boolean, draft: MyDraftMessage | undefined, index: number}, + 'dialog_unread': {peerId: PeerId}, + 'dialog_flush': {peerId: PeerId}, + 'dialog_drop': {peerId: PeerId, dialog?: Dialog}, + 'dialog_migrate': {migrateFrom: PeerId, migrateTo: PeerId}, //'dialog_top': Dialog, 'dialog_notify_settings': Dialog, // 'dialog_order': {dialog: Dialog, pos: number}, - 'dialogs_multiupdate': {[peerId: string]: Dialog}, - 'dialogs_archived_unread': {count: number}, + 'dialogs_multiupdate': {[peerId: PeerId]: Dialog}, - 'history_append': {storage: MessagesStorage, peerId: number, mid: number}, - 'history_update': {storage: MessagesStorage, peerId: number, mid: number}, - 'history_reply_markup': {peerId: number}, + 'history_append': {storage: MessagesStorage, peerId: PeerId, mid: number}, + 'history_update': {storage: MessagesStorage, peerId: PeerId, mid: number}, + 'history_reply_markup': {peerId: PeerId}, 'history_multiappend': AppMessagesManager['newMessagesToHandle'], - 'history_delete': {peerId: number, msgs: Set}, - 'history_forbidden': number, - 'history_reload': number, - 'history_focus': {peerId: number, threadId?: number, mid?: number}, + 'history_delete': {peerId: PeerId, msgs: Set}, + 'history_forbidden': PeerId, + 'history_reload': PeerId, + 'history_focus': {peerId: PeerId, threadId?: number, mid?: number}, //'history_request': void, - 'message_edit': {storage: MessagesStorage, peerId: number, mid: number}, - 'message_views': {peerId: number, mid: number, views: number}, - 'message_sent': {storage: MessagesStorage, tempId: number, tempMessage: any, mid: number, message: Message.message}, + 'message_edit': {storage: MessagesStorage, peerId: PeerId, mid: number}, + 'message_views': {peerId: PeerId, mid: number, views: number}, + 'message_sent': {storage: MessagesStorage, tempId: number, tempMessage: any, mid: number, message: MyMessage}, 'messages_pending': void, 'messages_read': void, - 'messages_downloaded': {peerId: number, mids: number[]}, - 'messages_media_read': {peerId: number, mids: number[]}, + 'messages_downloaded': {peerId: PeerId, mids: number[]}, + 'messages_media_read': {peerId: PeerId, mids: number[]}, 'replies_updated': Message.message, - 'scheduled_new': {peerId: number, mid: number}, - 'scheduled_delete': {peerId: number, mids: number[]}, + 'scheduled_new': {peerId: PeerId, mid: number}, + 'scheduled_delete': {peerId: PeerId, mids: number[]}, - 'album_edit': {peerId: number, groupId: string, deletedMids: number[]}, + 'album_edit': {peerId: PeerId, groupId: string, deletedMids: number[]}, 'stickers_installed': StickerSet.stickerSet, 'stickers_deleted': StickerSet.stickerSet, @@ -81,21 +82,21 @@ export type BroadcastEvents = { 'media_stop': void, 'state_cleared': void, - 'state_synchronized': number | void, - 'state_synchronizing': number | void, + 'state_synchronized': ChatId | void, + 'state_synchronizing': ChatId | void, - 'contacts_update': number, - 'avatar_update': number, - 'chat_full_update': number, + 'contacts_update': UserId, + 'avatar_update': PeerId, + 'chat_full_update': ChatId, 'poll_update': {poll: Poll, results: PollResults}, - 'chat_update': number, - 'invalidate_participants': number, + 'chat_update': ChatId, + 'invalidate_participants': ChatId, //'channel_settings': {channelId: number}, - 'webpage_updated': {id: string, msgs: {peerId: number, mid: number, isScheduled: boolean}[]}, + 'webpage_updated': {id: WebPage.webPage['id'], msgs: {peerId: PeerId, mid: number, isScheduled: boolean}[]}, 'connection_status_change': ConnectionStatusChange, 'settings_updated': {key: string, value: any}, - 'draft_updated': {peerId: number, threadId: number, draft: MyDraftMessage | undefined, force?: boolean}, + 'draft_updated': {peerId: PeerId, threadId: number, draft: MyDraftMessage | undefined, force?: boolean}, 'event-heavy-animation-start': void, 'event-heavy-animation-end': void, @@ -128,7 +129,7 @@ export type BroadcastEvents = { 'emoji_recent': string, - 'download_start': string, + 'download_start': DocId, 'download_progress': any, 'document_downloaded': MyDocument, @@ -141,7 +142,7 @@ export class RootScope extends EventListenerBase<{ [name in keyof BroadcastEvents]: (e: BroadcastEvents[name]) => void }> { public overlaysActive = 0; - public myId = 0; + public myId: PeerId; public idle = { isIDLE: true, deactivated: false, @@ -150,7 +151,7 @@ export class RootScope extends EventListenerBase<{ }; public connectionStatus: {[name: string]: ConnectionStatusChange} = {}; public settings: State['settings']; - public peerId = 0; + public peerId: PeerId; public filterId = 0; public systemTheme: Theme['name']; public config: Partial = { @@ -172,13 +173,13 @@ export class RootScope extends EventListenerBase<{ this.peerId = peerId; }); - this.addEventListener('user_auth', (e) => { - this.myId = e.id; + this.addEventListener('user_auth', ({id}) => { + // @ts-ignore + this.myId = typeof(NULL_PEER_ID) === 'number' ? +id : '' + id; }); - this.addEventListener('connection_status_change', (e) => { - const status = e; - this.connectionStatus[e.name] = status; + this.addEventListener('connection_status_change', (status) => { + this.connectionStatus[status.name] = status; }); this.addEventListener('idle', (isIDLE) => { diff --git a/src/lib/serviceWorker/push.ts b/src/lib/serviceWorker/push.ts index 4165ef94..a9114787 100644 --- a/src/lib/serviceWorker/push.ts +++ b/src/lib/serviceWorker/push.ts @@ -263,15 +263,15 @@ function fireNotification(obj: PushNotificationObject, settings: PushStorage['pu const icon = 'assets/img/logo_filled_rounded.png'; let title = obj.title || 'Telegram'; let body = obj.description || ''; - let peerId: number; + let peerId: string; if(obj.custom) { if(obj.custom.channel_id) { - peerId = -obj.custom.channel_id; + peerId = '' + -obj.custom.channel_id; } else if(obj.custom.chat_id) { - peerId = -obj.custom.chat_id; + peerId = '' + -obj.custom.chat_id; } else { - peerId = +obj.custom.from_id || 0; + peerId = obj.custom.from_id || ''; } } diff --git a/src/lib/serviceWorker/stream.ts b/src/lib/serviceWorker/stream.ts index fc554b9b..7d6431c8 100644 --- a/src/lib/serviceWorker/stream.ts +++ b/src/lib/serviceWorker/stream.ts @@ -64,7 +64,7 @@ setInterval(() => { }, 120e3); type StreamRange = [number, number]; -type StreamId = string; +type StreamId = DocId; const streams: Map = new Map(); class Stream { private destroyDebounced: () => void; diff --git a/src/lib/storages/dialogs.ts b/src/lib/storages/dialogs.ts index 864d1c08..e7e6062f 100644 --- a/src/lib/storages/dialogs.ts +++ b/src/lib/storages/dialogs.ts @@ -22,12 +22,15 @@ import type { AppMessagesIdsManager } from "../appManagers/appMessagesIdsManager import { tsNow } from "../../helpers/date"; import apiManager from "../mtproto/mtprotoworker"; import SearchIndex from "../searchIndex"; -import { forEachReverse, insertInDescendSortedArray } from "../../helpers/array"; +import { forEachReverse, indexOfAndSplice, insertInDescendSortedArray } from "../../helpers/array"; import rootScope from "../rootScope"; -import { safeReplaceObject } from "../../helpers/object"; +import { defineNotNumerableProperties, safeReplaceObject } from "../../helpers/object"; import { AppStateManager } from "../appManagers/appStateManager"; import { SliceEnd } from "../../helpers/slicedArray"; import { MyDialogFilter } from "./filters"; +import { NULL_PEER_ID } from "../mtproto/mtproto_config"; +import { NoneToVoidFunction } from "../../types"; +import ctx from "../../environment/ctx"; export type FolderDialog = { dialog: Dialog, @@ -35,24 +38,29 @@ export type FolderDialog = { }; export type Folder = { - dialogs: FolderDialog[], - count?: number + dialogs: Dialog[], + id: number, + unreadMessagesCount: number, + unreadDialogsCount: number, + dispatchUnreadTimeout?: number }; +export const GLOBAL_FOLDER_ID: number = undefined; + +// let spentTime = 0; export default class DialogsStorage { private storage: AppStateManager['storages']['dialogs']; - private dialogs: {[peerId: string]: Dialog}; - public byFolders: {[folderId: number]: Dialog[]}; + private dialogs: {[peerId: PeerId]: Dialog}; - // public folders: {[folderId: number]: Folder} = {}; + private folders: {[folderId: number]: Folder} = {}; private allDialogsLoaded: {[folder_id: number]: boolean}; private dialogsOffsetDate: {[folder_id: number]: number}; - private pinnedOrders: {[folder_id: number]: number[]}; + private pinnedOrders: {[folder_id: number]: PeerId[]}; private dialogsNum: number; - private dialogsIndex: SearchIndex; + private dialogsIndex: SearchIndex; private cachedResults: { query: string, @@ -61,7 +69,8 @@ export default class DialogsStorage { folderId: number }; - constructor(private appMessagesManager: AppMessagesManager, + constructor( + private appMessagesManager: AppMessagesManager, private appChatsManager: AppChatsManager, private appPeersManager: AppPeersManager, private appUsersManager: AppUsersManager, @@ -76,8 +85,8 @@ export default class DialogsStorage { this.dialogs = this.storage.getCache(); this.clear(true); - rootScope.addEventListener('language_change', (e) => { - const peerId = appUsersManager.getSelf().id; + rootScope.addEventListener('language_change', () => { + const peerId = appUsersManager.getSelf().id.toPeerId(false); const dialog = this.getDialogOnly(peerId); if(dialog) { const peerText = appPeersManager.getPeerSearchText(peerId); @@ -85,18 +94,21 @@ export default class DialogsStorage { } }); - // to set new indexes - rootScope.addEventListener('filter_order', () => { - // ! MUST BE REFACTORED ! - for(let id in this.appMessagesManager.filtersStorage.filters) { - this.getFolder(+id, false); + rootScope.addEventListener('filter_update', (filter) => { + const dialogs = this.getCachedDialogs(false); + for(let i = 0; i < dialogs.length; ++i) { + this.processDialogForFilter(dialogs[i], filter); } }); + rootScope.addEventListener('filter_delete', (filter) => { + delete this.folders[filter.id]; + }); + rootScope.addEventListener('chat_update', (chatId) => { const chat: Chat.chat = this.appChatsManager.getChat(chatId); - const peerId = -chatId; + const peerId = chatId.toPeerId(true); if(chat.pFlags.left && this.getDialogOnly(peerId)) { this.dropDialogWithEvent(peerId); } @@ -127,6 +139,11 @@ export default class DialogsStorage { if(dialog.topMessage) { this.appMessagesManager.saveMessages([dialog.topMessage]); } + + for(let i = 0; i <= 10; ++i) { + // @ts-ignore + delete dialog[`index_${i}`]; + } this.saveDialog(dialog, undefined, true); @@ -148,26 +165,43 @@ export default class DialogsStorage { } public setDialogsLoaded(folderId: number, loaded: boolean) { - this.allDialogsLoaded[folderId] = loaded; + if(folderId === GLOBAL_FOLDER_ID && loaded) { + this.allDialogsLoaded[0] = loaded; + this.allDialogsLoaded[1] = loaded; + } else { + this.allDialogsLoaded[folderId] = loaded; + } + + if(this.allDialogsLoaded[0] && this.allDialogsLoaded[1]) { + this.allDialogsLoaded[GLOBAL_FOLDER_ID] = true; + } + this.appStateManager.pushToState('allDialogsLoaded', this.allDialogsLoaded); } public clear(init = false) { - if(!init) { - const dialogs = this.appStateManager.storagesResults.dialogs; - dialogs.length = 0; - this.storage.clear(); - } - - this.byFolders = {}; - this.allDialogsLoaded = {}; - this.dialogsOffsetDate = {}; this.pinnedOrders = { 0: [], 1: [] }; + + if(!init) { + const dialogs = this.appStateManager.storagesResults.dialogs; + dialogs.length = 0; + this.storage.clear(); + + this.setDialogsLoaded(0, false); + this.setDialogsLoaded(1, false); + this.setDialogsLoaded(GLOBAL_FOLDER_ID, false); + this.savePinnedOrders(); + } else { + this.allDialogsLoaded = {}; + } + + this.folders = {}; + this.dialogsOffsetDate = {}; this.dialogsNum = 0; - this.dialogsIndex = new SearchIndex({ + this.dialogsIndex = new SearchIndex({ clearBadChars: true, ignoreCase: true, latinize: true, @@ -181,6 +215,16 @@ export default class DialogsStorage { }; } + public handleDialogUnpinning(dialog: Dialog, folderId: number) { + delete dialog.pFlags.pinned; + indexOfAndSplice(this.pinnedOrders[folderId], dialog.peerId); + this.savePinnedOrders(); + } + + public savePinnedOrders() { + this.appStateManager.pushToState('pinnedOrders', this.pinnedOrders); + } + public resetPinnedOrder(folderId: number) { this.pinnedOrders[folderId] = []; } @@ -189,39 +233,37 @@ export default class DialogsStorage { return this.pinnedOrders[folderId]; } - public getOffsetDate(folderId: number) { - return this.dialogsOffsetDate[folderId] || 0; + public getOffsetDate(folderId: number): number { + const offsetDate = this.dialogsOffsetDate[folderId] || 0; + if(folderId === GLOBAL_FOLDER_ID && !offsetDate) { // make request not from beginning if we have loaded some dialogs + return Math.min(this.getOffsetDate(0), this.getOffsetDate(1)); + } + + return offsetDate; } - public getFolder(id: number, skipMigrated = true) { - if(id <= 1) { - const arr = this.byFolders[id] ?? (this.byFolders[id] = []); - return skipMigrated ? arr.filter(dialog => dialog.migratedTo === undefined) : arr; + public getFolder(id: number) { + return this.folders[id] ?? (this.folders[id] = {dialogs: [], id, unreadMessagesCount: 0, unreadDialogsCount: 0}); + } + + public getFolderDialogs(id: number, skipMigrated = true): Dialog[] { + if(id === GLOBAL_FOLDER_ID) { // * it won't be sorted + return this.getCachedDialogs(skipMigrated); } - // const dialogs: {dialog: Dialog, index: number}[] = []; - const dialogs: Dialog[] = []; - const filter = this.appMessagesManager.filtersStorage.getFilter(id); + const folder = this.getFolder(id); + return skipMigrated ? folder.dialogs.filter(dialog => dialog.migratedTo === undefined) : folder.dialogs; + } - const indexStr = this.getDialogIndexKey(id); - for(const peerId in this.dialogs) { - const dialog = this.dialogs[peerId]; - if(this.setDialogIndexInFilter(dialog, indexStr, filter) && (!skipMigrated || dialog.migratedTo === undefined)) { - insertInDescendSortedArray(dialogs, dialog, indexStr, -1); - } - } - - return dialogs; - - // dialogs.sort((a, b) => b.index - a.index); - // return dialogs.map(d => d.dialog); + public getCachedDialogs(skipMigrated?: boolean) { + return this.getFolderDialogs(0, skipMigrated).concat(this.getFolderDialogs(1, skipMigrated)); } private setDialogIndexInFilter(dialog: Dialog, indexKey: ReturnType, filter: MyDialogFilter) { let index: number; if(this.appMessagesManager.filtersStorage.testDialogForFilter(dialog, filter)) { - const pinnedIndex = filter.pinned_peers.indexOf(dialog.peerId); + const pinnedIndex = filter.pinnedPeerIds.indexOf(dialog.peerId); if(pinnedIndex !== -1) { index = this.generateDialogIndex(this.generateDialogPinnedDateByIndex(filter.pinned_peers.length - 1 - pinnedIndex), true); } else if(dialog.pFlags?.pinned) { @@ -234,16 +276,13 @@ export default class DialogsStorage { return dialog[indexKey] = index; } - public getDialog(peerId: number, folderId?: number, skipMigrated = true): [Dialog, number] | [] { + public getDialog(peerId: PeerId, folderId?: number, skipMigrated = true): [Dialog, number] | [] { const folders: Dialog[][] = []; if(folderId === undefined) { - const dialogs = this.byFolders; - for(const folderId in dialogs) { - folders.push(dialogs[folderId]); - } + folders.push(this.getFolder(0).dialogs, this.getFolder(1).dialogs); } else { - folders.push(this.getFolder(folderId, skipMigrated)); + folders.push(this.getFolderDialogs(folderId, false)); } for(let folder of folders) { @@ -261,7 +300,7 @@ export default class DialogsStorage { return []; } - public getDialogOnly(peerId: number) { + public getDialogOnly(peerId: PeerId) { return this.dialogs[peerId]; } @@ -281,6 +320,99 @@ export default class DialogsStorage { return (date * 0x10000) + (isPinned ? 0 : ((++this.dialogsNum) & 0xFFFF)); } + public processDialogForFilters(dialog: Dialog) { + // let perf = performance.now(); + const filters = this.appMessagesManager.filtersStorage.filters; + for(const id in filters) { + const filter = filters[id]; + this.processDialogForFilter(dialog, filter); + } + // spentTime += (performance.now() - perf); + // console.log('generate index time:', spentTime); + } + + public processDialogForFilter(dialog: Dialog, filter: MyDialogFilter) { + const indexKey = this.getDialogIndexKey(filter.id); + const folder = this.getFolder(filter.id); + const dialogs = folder.dialogs; + + const wasIndex = dialogs.findIndex(d => d.peerId === dialog.peerId); + const wasDialog = dialogs[wasIndex]; + const wasDialogIndex = wasDialog && wasDialog[indexKey]; + + const newDialogIndex = this.setDialogIndexInFilter(dialog, indexKey, filter); + + if(wasDialogIndex === newDialogIndex) { + return; + } + + if((!wasDialogIndex && newDialogIndex) || (wasIndex && !newDialogIndex)) { + this.prepareFolderUnreadCountModifyingByDialog(filter.id, dialog, !!newDialogIndex); + } + + if(wasIndex !== -1) { + dialogs.splice(wasIndex, 1); + } + + if(newDialogIndex) { + insertInDescendSortedArray(dialogs, dialog, indexKey, wasIndex); + } + } + + public prepareDialogUnreadCountModifying(dialog: Dialog) { + const callbacks: NoneToVoidFunction[] = [ + this.prepareFolderUnreadCountModifyingByDialog(dialog.folder_id, dialog) + ]; + + const filters = this.appMessagesManager.filtersStorage.filters; + for(const id in filters) { + const filter = filters[id]; + if(this.appMessagesManager.filtersStorage.testDialogForFilter(dialog, filter)) { + callbacks.push(this.prepareFolderUnreadCountModifyingByDialog(filter.id, dialog)); + } + } + + return () => callbacks.forEach(callback => callback()); + } + + public prepareFolderUnreadCountModifyingByDialog(folderId: number, dialog: Dialog, toggle?: boolean) { + const wasUnreadCount = this.appMessagesManager.getDialogUnreadCount(dialog); + + if(toggle !== undefined) { + this.modifyFolderUnreadCount(folderId, toggle ? wasUnreadCount : -wasUnreadCount, wasUnreadCount ? (toggle ? 1 : -1) : 0); + return; + } + + return () => { + const newUnreadCount = this.appMessagesManager.getDialogUnreadCount(dialog); + const addMessagesCount = newUnreadCount - wasUnreadCount; + const addDialogsCount = (newUnreadCount && !wasUnreadCount) || (!newUnreadCount && wasUnreadCount) ? (wasUnreadCount ? -1 : 1) : 0; + this.modifyFolderUnreadCount(folderId, addMessagesCount, addDialogsCount); + }; + } + + public modifyFolderUnreadCount(folderId: number, addMessagesCount: number, addDialogsCount: number) { + if(!addMessagesCount && !addDialogsCount) { + return; + } + + const folder = this.getFolder(folderId); + if(addMessagesCount) { + folder.unreadMessagesCount = Math.max(0, folder.unreadMessagesCount + addMessagesCount); + } + + if(addDialogsCount) { + folder.unreadDialogsCount = Math.max(0, folder.unreadDialogsCount + addDialogsCount); + } + + if(folder.dispatchUnreadTimeout === undefined) { + folder.dispatchUnreadTimeout = ctx.setTimeout(() => { + folder.dispatchUnreadTimeout = undefined; + rootScope.dispatchEvent('folder_unread', folder); + }, 0); + } + } + public generateIndexForDialog(dialog: Dialog, justReturn = false, message?: MyMessage) { let topDate = 0, isPinned: boolean; if(dialog.pFlags.pinned && !justReturn) { @@ -293,7 +425,7 @@ export default class DialogsStorage { topDate = (message as Message.message).date || topDate; - const channelId = this.appPeersManager.isChannel(dialog.peerId) ? -dialog.peerId : 0; + const channelId = this.appPeersManager.isChannel(dialog.peerId) && dialog.peerId.toChatId(); if(channelId) { const channel: Chat.channel = this.appChatsManager.getChat(channelId); if(!topDate || (channel.date && channel.date > topDate)) { @@ -316,12 +448,6 @@ export default class DialogsStorage { } dialog.index = index; - - // ! MUST BE REFACTORED ! - for(let id in this.appMessagesManager.filtersStorage.filters) { - const filter = this.appMessagesManager.filtersStorage.filters[id]; - this.setDialogIndexInFilter(dialog, this.getDialogIndexKey(+id), filter); - } } public generateDialogPinnedDateByIndex(pinnedIndex: number) { @@ -335,13 +461,13 @@ export default class DialogsStorage { let pinnedIndex = foundIndex; if(foundIndex === -1) { pinnedIndex = order.push(dialog.peerId) - 1; - this.appStateManager.pushToState('pinnedOrders', this.pinnedOrders); + this.savePinnedOrders(); } return this.generateDialogPinnedDateByIndex(pinnedIndex); } - /* public generateDialog(peerId: number) { + /* public generateDialog(peerId: PeerId) { const dialog: Dialog = { _: 'dialog', pFlags: {}, @@ -368,7 +494,7 @@ export default class DialogsStorage { for(let i = 0, length = history.length; i < length; ++i) { const mid = history[i]; const message: MyMessage = this.appMessagesManager.getMessageFromStorage(messagesStorage, mid); - if(!message.pFlags.is_outgoing/* || peerId === SERVICE_PEER_ID */) { + if(!message.pFlags.is_outgoing && !message.deleted/* || peerId === SERVICE_PEER_ID */) { incomingMessage = message; const fromId = message.viaBotId || message.fromId; @@ -392,8 +518,8 @@ export default class DialogsStorage { dialog.read_outbox_max_id = this.appMessagesIdsManager.clearMessageId(dialog.read_outbox_max_id); */ // CAN TOUCH NOW - if(peerId < 0 && pts) { - const newPts = this.apiUpdatesManager.getChannelState(-peerId, pts).pts; + if(peerId.isAnyChat() && pts) { + const newPts = this.apiUpdatesManager.getChannelState(peerId.toChatId(), pts).pts; dialog.pts = newPts; } @@ -412,29 +538,48 @@ export default class DialogsStorage { } */ } - public pushDialog(dialog: Dialog, offsetDate?: number) { - const dialogs = this.getFolder(dialog.folder_id, false); - const pos = dialogs.findIndex(d => d.peerId === dialog.peerId); + public pushDialog(dialog: Dialog, offsetDate?: number, ignoreOffsetDate?: boolean, saveGlobalOffset?: boolean) { + const {folder_id, peerId} = dialog; + const dialogs = this.getFolderDialogs(folder_id, false); + const pos = dialogs.findIndex(d => d.peerId === peerId); if(pos !== -1) { dialogs.splice(pos, 1); } - //if(!this.dialogs[dialog.peerId]) { - this.dialogs[dialog.peerId] = dialog; + //if(!this.dialogs[peerId]) { + this.dialogs[peerId] = dialog; this.setDialogToState(dialog); - //} - - // let pos: number; - if(offsetDate && - !dialog.pFlags.pinned && - (!this.dialogsOffsetDate[dialog.folder_id] || offsetDate < this.dialogsOffsetDate[dialog.folder_id])) { - if(pos !== -1) { // So the dialog jumped to the last position - // dialogs.splice(pos, 1); - return false; + //} + + if(offsetDate === undefined) { + offsetDate = this.getDialogOffsetDate(dialog); + } + + this.processDialogForFilters(dialog); + + if(offsetDate && !dialog.pFlags.pinned) { + if(saveGlobalOffset) { + const savedGlobalOffsetDate = this.dialogsOffsetDate[GLOBAL_FOLDER_ID]; + if(!savedGlobalOffsetDate || offsetDate < savedGlobalOffsetDate) { + this.dialogsOffsetDate[GLOBAL_FOLDER_ID] = offsetDate; + } } - this.dialogsOffsetDate[dialog.folder_id] = offsetDate; + const savedOffsetDate = this.dialogsOffsetDate[folder_id]; + if(!savedOffsetDate || offsetDate < savedOffsetDate) { + // if(pos !== -1) { + if(!ignoreOffsetDate && !this.isDialogsLoaded(folder_id)) { + this.clearDialogFromState(dialog, true); + return; + } + + this.dialogsOffsetDate[folder_id] = offsetDate; + } + } + + if(pos === -1) { + this.prepareFolderUnreadCountModifyingByDialog(folder_id, dialog, true); } /* const newPos = */insertInDescendSortedArray(dialogs, dialog, 'index', pos); @@ -443,24 +588,36 @@ export default class DialogsStorage { } */ } - public dropDialog(peerId: number): [Dialog, number] | [] { + public dropDialog(peerId: PeerId): ReturnType { const foundDialog = this.getDialog(peerId, undefined, false); - if(foundDialog[0]) { - this.byFolders[foundDialog[0].folder_id].splice(foundDialog[1], 1); - this.pinnedOrders[foundDialog[0].folder_id].findAndSplice(_peerId => peerId === _peerId); + const [dialog, index] = foundDialog; + if(dialog) { + const folder = this.getFolder(dialog.folder_id); + folder.dialogs.splice(index, 1); + this.processDialogForFilters(dialog); + + const wasPinned = indexOfAndSplice(this.pinnedOrders[dialog.folder_id], peerId) !== undefined; this.dialogsIndex.indexObject(peerId, ''); delete this.dialogs[peerId]; - // clear from state - this.appStateManager.keepPeerSingle(0, 'topMessage_' + peerId); - this.appStateManager.keepPeerSingle(0, 'dialog_' + peerId); - this.storage.delete(peerId); + if(wasPinned) { + this.savePinnedOrders(); + } + + this.clearDialogFromState(dialog, false); } return foundDialog; } - public dropDialogWithEvent(peerId: number) { + public clearDialogFromState(dialog: Dialog, keepLocal: boolean) { + const peerId = dialog.peerId; + this.appStateManager.keepPeerSingle(NULL_PEER_ID, 'topMessage_' + peerId); + this.appStateManager.keepPeerSingle(NULL_PEER_ID, 'dialog_' + peerId); + this.storage.delete(peerId, keepLocal); + } + + public dropDialogWithEvent(peerId: PeerId) { const dropped = this.dropDialog(peerId); if(dropped.length) { rootScope.dispatchEvent('dialog_drop', {peerId, dialog: dropped[0]}); @@ -483,7 +640,7 @@ export default class DialogsStorage { // this.appMessagesManager.log('applyConversation', dialogsResult); - const updatedDialogs: {[peerId: number]: Dialog} = {}; + const updatedDialogs: {[peerId: PeerId]: Dialog} = {}; (dialogsResult.dialogs as Dialog[]).forEach((dialog) => { const peerId = this.appPeersManager.getPeerId(dialog.peer); let topMessage = dialog.top_message; @@ -524,10 +681,14 @@ export default class DialogsStorage { } } + public getDialogOffsetDate(dialog: Dialog) { + return this.appMessagesManager.getMessageByPeer(dialog.peerId, dialog.top_message).date || 0; + } + /** * Won't save migrated from peer, forbidden peers, left and kicked */ - public saveDialog(dialog: Dialog, folderId = 0, saveOffset = false) { + public saveDialog(dialog: Dialog, folderId = dialog.folder_id ?? 0, ignoreOffsetDate?: boolean, saveGlobalOffset?: boolean) { const peerId = this.appPeersManager.getPeerId(dialog.peer); if(!peerId) { console.error('saveConversation no peerId???', dialog, folderId); @@ -538,10 +699,10 @@ export default class DialogsStorage { console.error('saveConversation not regular dialog', dialog, Object.assign({}, dialog)); } - const channelId = this.appPeersManager.isChannel(peerId) ? -peerId : 0; + const channelId = this.appPeersManager.isChannel(peerId) ? peerId.toChatId() : NULL_PEER_ID; - if(peerId < 0) { - const chat: Chat = this.appChatsManager.getChat(-peerId); + if(peerId.isAnyChat()) { + const chat: Chat = this.appChatsManager.getChat(peerId.toChatId()); // ! chatForbidden stays for chat where you're kicked if(chat._ === 'channelForbidden' /* || chat._ === 'chatForbidden' */ || (chat as Chat.chat).pFlags.left || (chat as Chat.chat).pFlags.kicked) { return; @@ -556,7 +717,10 @@ export default class DialogsStorage { let mid: number, message: MyMessage; if(dialog.top_message) { mid = this.appMessagesIdsManager.generateMessageId(dialog.top_message);//dialog.top_message; - if(wasDialogBefore?.top_message && !this.appMessagesManager.getMessageByPeer(peerId, wasDialogBefore.top_message).deleted && wasDialogBefore.top_message >= mid) { + + // preserve outgoing message + const wasTopMessage = wasDialogBefore?.top_message && this.appMessagesManager.getMessageByPeer(peerId, wasDialogBefore.top_message) as MyMessage; + if(wasTopMessage?.pFlags?.is_outgoing && wasDialogBefore.top_message >= mid) { mid = wasDialogBefore.top_message; } @@ -567,7 +731,7 @@ export default class DialogsStorage { _: 'message', id: mid, mid, - from_id: this.appPeersManager.getOutputPeer(this.appUsersManager.getSelf().id), + from_id: this.appPeersManager.getOutputPeer(this.appUsersManager.getSelf().id.toPeerId(false)), peer_id: this.appPeersManager.getOutputPeer(peerId), deleted: true, pFlags: {out: true}, @@ -581,8 +745,8 @@ export default class DialogsStorage { this.appMessagesManager.log.error('saveConversation no message:', dialog, message); } - if(!channelId && peerId < 0) { - const chat = this.appChatsManager.getChat(-peerId); + if(!channelId && peerId.isAnyChat()) { + const chat = this.appChatsManager.getChat(peerId.toChatId()); if(chat && chat.migrated_to && chat.pFlags.deactivated) { const migratedToPeer = this.appPeersManager.getPeerId(chat.migrated_to); this.appMessagesManager.migratedFromTo[peerId] = migratedToPeer; @@ -597,7 +761,7 @@ export default class DialogsStorage { dialog.read_inbox_max_id = this.appMessagesIdsManager.generateMessageId(wasDialogBefore && !dialog.read_inbox_max_id ? wasDialogBefore.read_inbox_max_id : dialog.read_inbox_max_id); dialog.read_outbox_max_id = this.appMessagesIdsManager.generateMessageId(wasDialogBefore && !dialog.read_outbox_max_id ? wasDialogBefore.read_outbox_max_id : dialog.read_outbox_max_id); - if(!dialog.hasOwnProperty('folder_id')) { + if(dialog.folder_id === undefined) { if(dialog._ === 'dialog') { // ! СЛОЖНО ! СМОТРИ В getTopMessages dialog.folder_id = wasDialogBefore ? wasDialogBefore.folder_id : folderId; @@ -644,7 +808,10 @@ export default class DialogsStorage { historyStorage.readMaxId = dialog.read_inbox_max_id; historyStorage.readOutboxMaxId = dialog.read_outbox_max_id; - this.appNotificationsManager.savePeerSettings(peerId, dialog.notify_settings); + this.appNotificationsManager.savePeerSettings({ + peerId, + settings: dialog.notify_settings + }); if(channelId && dialog.pts) { this.apiUpdatesManager.addChannelState(channelId, dialog.pts); @@ -652,11 +819,25 @@ export default class DialogsStorage { this.generateIndexForDialog(dialog); + defineNotNumerableProperties(dialog, [ + 'index_0', + 'index_1', + 'index_2', + 'index_3', + 'index_4', + 'index_5', + 'index_6', + 'index_7', + 'index_8', + 'index_9', + 'index_10' + ]); + if(wasDialogBefore) { safeReplaceObject(wasDialogBefore, dialog); } - this.pushDialog(dialog, saveOffset && message.date); + this.pushDialog(dialog, message.date, ignoreOffsetDate, saveGlobalOffset); } public getDialogIndexKey(filterId: number) { @@ -676,20 +857,49 @@ export default class DialogsStorage { isEnd: boolean }> } { + const ret: { + cached: boolean, + promise: Promise<{ + dialogs: Dialog[], + count: number, + isTopEnd: boolean, + isEnd: boolean + }> + } = {} as any; + if(folderId > 1) { + const promises: Promise[] = []; + const fillContactsResult = this.appUsersManager.fillContacts(); if(!fillContactsResult.cached) { - return { - cached: false, - promise: fillContactsResult.promise.then(() => { - return this.getDialogs(query, offsetIndex, limit, folderId, skipMigrated).promise; - }) - }; + promises.push(fillContactsResult.promise); + } + + const filter = this.appMessagesManager.filtersStorage.getFilter(folderId); + const pinnedPeers = filter?.pinned_peers; + if(pinnedPeers?.length) { + const pinnedPeerIds = filter.pinnedPeerIds; + const reloadDialogs = pinnedPeers.filter((inputPeer, idx) => !this.getDialogOnly(pinnedPeerIds[idx])); + if(reloadDialogs.length) { + const reloadPromises = reloadDialogs.map(inputPeer => this.appMessagesManager.reloadConversation(inputPeer)); + const reloadPromise = Promise.all(reloadPromises); + promises.push(reloadPromise); + } + } + + if(promises.length) { + ret.cached = false; + ret.promise = Promise.all(promises).then(() => { + return this.getDialogs(query, offsetIndex, limit, folderId, skipMigrated).promise; + }); + + return ret; } } - const realFolderId = folderId > 1 ? 0 : folderId; - let curDialogStorage = this.getFolder(folderId, skipMigrated); + // let's load only first pages by certain folderId. next pages will load without folder filtering + const realFolderId = folderId > 1 || this.getOffsetDate(folderId) ? GLOBAL_FOLDER_ID : folderId; + let curDialogStorage = this.getFolderDialogs(folderId, skipMigrated); const indexStr = this.getDialogIndexKey(folderId); @@ -728,48 +938,49 @@ export default class DialogsStorage { } const loadedAll = this.isDialogsLoaded(realFolderId); - if(query || loadedAll || curDialogStorage.length >= (offset + limit)) { + const isEnoughDialogs = curDialogStorage.length >= (offset + limit); + if(query || loadedAll || isEnoughDialogs) { const dialogs = curDialogStorage.slice(offset, offset + limit); - return { - cached: true, - promise: Promise.resolve({ - dialogs, - count: loadedAll ? curDialogStorage.length : null, - isTopEnd: curDialogStorage.length && ((dialogs[0] && dialogs[0] === curDialogStorage[0]) || curDialogStorage[0][indexStr] < offsetIndex), - isEnd: loadedAll && (offset + limit) >= curDialogStorage.length - }) - }; + ret.cached = true; + ret.promise = Promise.resolve({ + dialogs, + count: loadedAll ? curDialogStorage.length : null, + isTopEnd: curDialogStorage.length && ((dialogs[0] && dialogs[0] === curDialogStorage[0]) || curDialogStorage[0][indexStr] < offsetIndex), + isEnd: (query || loadedAll) && (offset + limit) >= curDialogStorage.length + }); + + return ret; } - return { - cached: false, - promise: this.appMessagesManager.getTopMessages(limit, realFolderId).then(result => { - //const curDialogStorage = this[folderId]; - if(skipMigrated) { - curDialogStorage = this.getFolder(folderId, skipMigrated); - } - - offset = 0; - if(offsetIndex > 0) { - for(let length = curDialogStorage.length; offset < length; ++offset) { - if(offsetIndex > curDialogStorage[offset][indexStr]) { - break; - } + ret.cached = false; + ret.promise = this.appMessagesManager.getTopMessages(limit, realFolderId).then(result => { + //const curDialogStorage = this[folderId]; + if(skipMigrated) { + curDialogStorage = this.getFolderDialogs(folderId, skipMigrated); + } + + offset = 0; + if(offsetIndex > 0) { + for(let length = curDialogStorage.length; offset < length; ++offset) { + if(offsetIndex > curDialogStorage[offset][indexStr]) { + break; } } - - //this.log.warn(offset, offset + limit, curDialogStorage.dialogs.length, this.dialogs.length); - - const dialogs = curDialogStorage.slice(offset, offset + limit); - return { - dialogs, - count: result.count === undefined ? curDialogStorage.length : result.count, - isTopEnd: curDialogStorage.length && ((dialogs[0] && dialogs[0] === curDialogStorage[0]) || curDialogStorage[0][indexStr] < offsetIndex), - // isEnd: this.isDialogsLoaded(realFolderId) && (offset + limit) >= curDialogStorage.length - isEnd: result.isEnd - }; - }) - }; + } + + //this.log.warn(offset, offset + limit, curDialogStorage.dialogs.length, this.dialogs.length); + + const dialogs = curDialogStorage.slice(offset, offset + limit); + return { + dialogs, + count: result.count === undefined ? curDialogStorage.length : result.count, + isTopEnd: curDialogStorage.length && ((dialogs[0] && dialogs[0] === curDialogStorage[0]) || curDialogStorage[0][indexStr] < offsetIndex), + // isEnd: this.isDialogsLoaded(realFolderId) && (offset + limit) >= curDialogStorage.length + isEnd: result.isEnd + }; + }); + + return ret; } // only 0 and 1 folders @@ -784,9 +995,7 @@ export default class DialogsStorage { const dialog = this.dropDialog(peerId)[0]; if(dialog) { if(dialog.pFlags?.pinned) { - delete dialog.pFlags.pinned; - this.pinnedOrders[folder_id].findAndSplice(p => p === dialog.peerId); - this.appStateManager.pushToState('pinnedOrders', this.pinnedOrders); + this.handleDialogUnpinning(dialog, folder_id); } dialog.folder_id = folder_id; @@ -816,9 +1025,7 @@ export default class DialogsStorage { if(dialog) { if(!update.pFlags.pinned) { - delete dialog.pFlags.pinned; - this.pinnedOrders[folderId].findAndSplice(p => p === dialog.peerId); - this.appStateManager.pushToState('pinnedOrders', this.pinnedOrders); + this.handleDialogUnpinning(dialog, folderId); } else { // means set dialog.pFlags.pinned = true; } @@ -832,7 +1039,7 @@ export default class DialogsStorage { private onUpdatePinnedDialogs = (update: Update.updatePinnedDialogs) => { const folderId = update.folder_id ?? 0; - const handleOrder = (order: number[]) => { + const handleOrder = (order: PeerId[]) => { this.pinnedOrders[folderId].length = 0; order.reverse(); // index must be higher order.forEach((peerId) => { @@ -848,16 +1055,21 @@ export default class DialogsStorage { this.generateIndexForDialog(dialog); }); - this.getFolder(folderId, false).forEach(dialog => { + const dialogs = this.getFolderDialogs(folderId, false); + for(const dialog of dialogs) { + if(!dialog.pFlags.pinned) { + break; + } + const peerId = dialog.peerId; - if(dialog.pFlags.pinned && !newPinned[peerId]) { + if(!newPinned[peerId]) { this.appMessagesManager.scheduleHandleNewDialogs(peerId); } - }); + } }; //this.log('updatePinnedDialogs', update); - const newPinned: {[peerId: number]: true} = {}; + const newPinned: {[peerId: PeerId]: true} = {}; if(!update.order) { apiManager.invokeApi('messages.getPinnedDialogs', { folder_id: folderId diff --git a/src/lib/storages/filters.ts b/src/lib/storages/filters.ts index f57118c2..55cd25e0 100644 --- a/src/lib/storages/filters.ts +++ b/src/lib/storages/filters.ts @@ -19,11 +19,20 @@ import { forEachReverse } from "../../helpers/array"; import { AppStateManager } from "../appManagers/appStateManager"; export type MyDialogFilter = Modify; +const convertment = [ + ['pinned_peers', 'pinnedPeerIds'], + ['exclude_peers', 'excludePeerIds'], + ['include_peers', 'includePeerIds'] +] as ['pinned_peers' | 'exclude_peers' | 'include_peers', 'pinnedPeerIds' | 'excludePeerIds' | 'includePeerIds'][]; + // ! because 0 index is 'All Chats' const START_ORDER_INDEX = 1; @@ -120,12 +129,12 @@ export default class FiltersStorage { const peerId = dialog.peerId; // exclude_peers - if(filter.exclude_peers.includes(peerId)) { + if(filter.excludePeerIds.includes(peerId)) { return false; } // include_peers - if(filter.include_peers.includes(peerId)) { + if(filter.includePeerIds.includes(peerId)) { return true; } @@ -137,7 +146,7 @@ export default class FiltersStorage { } // exclude_read - if(pFlags.exclude_read && !dialog.unread_count && !dialog.pFlags.unread_mark) { + if(pFlags.exclude_read && !this.appMessagesManager.isDialogUnread(dialog)) { return false; } @@ -149,7 +158,7 @@ export default class FiltersStorage { } } - if(peerId < 0) { + if(this.appPeersManager.isAnyChat(peerId)) { // broadcasts if(pFlags.broadcasts && this.appPeersManager.isBroadcast(peerId)) { return true; @@ -160,18 +169,20 @@ export default class FiltersStorage { return true; } } else { + const userId = peerId.toUserId(); + // bots - if(this.appUsersManager.isBot(peerId)) { + if(this.appUsersManager.isBot(userId)) { return !!pFlags.bots; } // non_contacts - if(pFlags.non_contacts && !this.appUsersManager.isContact(peerId)) { + if(pFlags.non_contacts && !this.appUsersManager.isContact(userId)) { return true; } // contacts - if(pFlags.contacts && this.appUsersManager.isContact(peerId)) { + if(pFlags.contacts && this.appUsersManager.isContact(userId)) { return true; } } @@ -187,16 +198,24 @@ export default class FiltersStorage { return this.filters[filterId]; } - public toggleDialogPin(peerId: number, filterId: number) { + public toggleDialogPin(peerId: PeerId, filterId: number) { const filter = this.filters[filterId]; - const wasPinned = filter.pinned_peers.findAndSplice(p => p === peerId); + const index = filter.pinnedPeerIds.indexOf(peerId); + const wasPinned = index !== -1; + + if(wasPinned) { + filter.pinned_peers.splice(index, 1); + filter.pinnedPeerIds.splice(index, 1); + } + if(!wasPinned) { if(filter.pinned_peers.length >= this.rootScope.config.pinned_infolder_count_max) { return Promise.reject({type: 'PINNED_DIALOGS_TOO_MUCH'}); } - filter.pinned_peers.unshift(peerId); + filter.pinned_peers.unshift(this.appPeersManager.getInputPeerById(peerId)); + filter.pinnedPeerIds.unshift(peerId); } return this.updateDialogFilter(filter); @@ -238,19 +257,23 @@ export default class FiltersStorage { } public getOutputDialogFilter(filter: MyDialogFilter) { - const c: MyDialogFilter = copy(filter); - ['pinned_peers', 'exclude_peers', 'include_peers'].forEach(key => { - // @ts-ignore - c[key] = c[key].map((peerId: number) => this.appPeersManager.getInputPeerById(peerId)); - }); + const c = copy(filter); + /* convertment.forEach(([from, to]) => { + c[from] = c[to].map((peerId) => this.appPeersManager.getInputPeerById(peerId)); + }); */ - forEachReverse(c.include_peers, (peerId, idx) => { - if(c.pinned_peers.includes(peerId)) { - c.include_peers.splice(idx, 1); + this.filterIncludedPinnedPeers(filter); + + return c; + } + + private filterIncludedPinnedPeers(filter: MyDialogFilter) { + forEachReverse(filter.includePeerIds, (peerId, idx) => { + if(filter.pinnedPeerIds.includes(peerId)) { + filter.include_peers.splice(idx, 1); + filter.includePeerIds.splice(idx, 1); } }); - - return c as any as DialogFilter; } public async getDialogFilters(overwrite = false): Promise { @@ -269,18 +292,16 @@ export default class FiltersStorage { } public saveDialogFilter(filter: MyDialogFilter, update = true) { - ['pinned_peers', 'exclude_peers', 'include_peers'].forEach(key => { - // @ts-ignore - filter[key] = filter[key].map((peer: any) => this.appPeersManager.getPeerId(peer)); + // defineNotNumerableProperties(filter, ['includePeerIds', 'excludePeerIds', 'pinnedPeerIds']); + + convertment.forEach(([from, to]) => { + filter[to] = filter[from].map((peer) => this.appPeersManager.getPeerId(peer)); }); - forEachReverse(filter.include_peers, (peerId, idx) => { - if(filter.pinned_peers.includes(peerId)) { - filter.include_peers.splice(idx, 1); - } - }); + this.filterIncludedPinnedPeers(filter); filter.include_peers = filter.pinned_peers.concat(filter.include_peers); + filter.includePeerIds = filter.pinnedPeerIds.concat(filter.includePeerIds); if(this.filters[filter.id]) { Object.assign(this.filters[filter.id], filter); diff --git a/src/pages/pageAuthCode.ts b/src/pages/pageAuthCode.ts index 6f21c2f5..c76abc6e 100644 --- a/src/pages/pageAuthCode.ts +++ b/src/pages/pageAuthCode.ts @@ -67,7 +67,7 @@ let onFirstMount = (): Promise => { switch(response._) { case 'auth.authorization': - apiManager.setUserAuth(response.user.id); + apiManager.setUser(response.user); import('./pageIm').then(m => { m.default.mount(); diff --git a/src/pages/pageSignIn.ts b/src/pages/pageSignIn.ts index 8a831f03..aee48894 100644 --- a/src/pages/pageSignIn.ts +++ b/src/pages/pageSignIn.ts @@ -13,7 +13,6 @@ import Page from "./page"; import InputField from "../components/inputField"; import CheckboxField from "../components/checkboxField"; import Button from "../components/button"; -import { IS_ANDROID, IS_APPLE, IS_APPLE_MOBILE } from "../environment/userAgent"; import fastSmoothScroll from "../helpers/fastSmoothScroll"; import { IS_TOUCH_SUPPORTED } from "../environment/touchSupport"; import App from "../config/app"; @@ -34,7 +33,6 @@ import toggleDisability from "../helpers/dom/toggleDisability"; import sessionStorage from "../lib/sessionStorage"; import { DcAuthKey } from "../types"; import placeCaretAtEnd from "../helpers/dom/placeCaretAtEnd"; -import { formatPhoneNumber } from "../helpers/formatPhoneNumber"; import { HelpCountry, HelpCountryCode } from "../layer"; import { getCountryEmoji } from "../vendor/emoji"; import simulateEvent from "../helpers/dom/dispatchEvent"; @@ -275,7 +273,7 @@ let onFirstMount = () => { onInput: (formatted) => { lottieLoader.loadLottieWorkers(); - const {country, code} = formatted; + const {country, code} = formatted || {}; let countryName = country ? country.name || country.default_name : ''/* 'Unknown' */; if(countryName !== countryInputField.value && ( !lastCountrySelected || diff --git a/src/pages/pageSignQR.ts b/src/pages/pageSignQR.ts index e3bf2ee9..728a4231 100644 --- a/src/pages/pageSignQR.ts +++ b/src/pages/pageSignQR.ts @@ -92,7 +92,7 @@ let onFirstMount = async() => { if(loginToken._ === 'auth.loginTokenSuccess') { const authorization = loginToken.authorization as any as AuthAuthorization.authAuthorization; - apiManager.setUserAuth(authorization.user.id); + apiManager.setUser(authorization.user); import('./pageIm').then(m => m.default.mount()); return true; } diff --git a/src/pages/pageSignUp.ts b/src/pages/pageSignUp.ts index 72de1e35..1e836b56 100644 --- a/src/pages/pageSignUp.ts +++ b/src/pages/pageSignUp.ts @@ -131,7 +131,7 @@ const onFirstMount = () => import('../lib/appManagers/appProfileManager').then(i switch(response._) { case 'auth.authorization': // success - apiManager.setUserAuth(response.user.id); + apiManager.setUser(response.user); sendAvatar().finally(() => { import('./pageIm').then(m => { diff --git a/src/scripts/generate_changelog.js b/src/scripts/generate_changelog.js index b34e1986..fd18bc53 100644 --- a/src/scripts/generate_changelog.js +++ b/src/scripts/generate_changelog.js @@ -14,7 +14,7 @@ const writeTo = `./public/changelogs/{VERSION}.md`; const splitted = text.split('\n\n'); splitted.forEach(text => { text = text.replace(/^\*/gm, '•'); - const splitted = text.split('\n'); + const splitted = text.split('\n').filter(line => !!line.trim()); const firstLine = splitted.shift(); - fs.writeFileSync(writeTo.replace('{VERSION}', firstLine.substr(4)), splitted.join('\n')); + fs.writeFileSync(writeTo.replace('{VERSION}', firstLine.substr(4)), splitted.join('\n') + '\n'); }); diff --git a/src/scripts/generate_mtproto_types.js b/src/scripts/generate_mtproto_types.js index 14b2a0c7..8a74bb94 100644 --- a/src/scripts/generate_mtproto_types.js +++ b/src/scripts/generate_mtproto_types.js @@ -69,8 +69,8 @@ function camelizeName(string, camelizeFirstLetterIfFound, camelizeFirstLetterIfN }); } -/** @type {(type: string, parseBooleanFlags: boolean) => any} */ -const processParamType = (type, parseBooleanFlags) => { +/** @type {(type: string, parseBooleanFlags: boolean, overrideTypes?: {[type: string]: string}) => any} */ +const processParamType = (type, parseBooleanFlags, overrideTypes) => { const isAdditional = type.indexOf('flags.-1?') === 0; const isFlag = type.includes('?'); if(isFlag) { @@ -78,7 +78,12 @@ const processParamType = (type, parseBooleanFlags) => { } if(type.includes('Vector')) { - return `Array<${processParamType(type.slice(7, -1), parseBooleanFlags)}>`; + return `Array<${processParamType(type.slice(7, -1), parseBooleanFlags, overrideTypes)}>`; + } + + const overridden = overrideTypes && overrideTypes[type]; + if(overridden) { + return overridden; } switch(type) { @@ -96,7 +101,7 @@ const processParamType = (type, parseBooleanFlags) => { return 'number'; case 'long': - return 'string'; + return 'string | number'; case 'bytes': return 'Uint8Array'; @@ -115,8 +120,8 @@ const processParamType = (type, parseBooleanFlags) => { } }; -/** @type {(params: {name: string, type: string}[], object: any, parseBooleanFlags: boolean) => any} */ -const processParams = (params, object = {}, parseBooleanFlags = true) => { +/** @type {(params: {name: string, type: string}[], object: any, parseBooleanFlags: boolean, overrideTypes?: {[type: string]: string}) => any} */ +const processParams = (params, object = {}, parseBooleanFlags = true, overrideTypes) => { for(const param of params) { let {name, type} = param; @@ -128,7 +133,7 @@ const processParams = (params, object = {}, parseBooleanFlags = true) => { type = replace[name]; } - const processed = processParamType(type, parseBooleanFlags); + const processed = processParamType(type, parseBooleanFlags, overrideTypes); if(type.includes('?true') && parseBooleanFlags) { if(!object.pFlags) object.pFlags = {}; object.pFlags[name] = processed; @@ -238,16 +243,19 @@ out += `}\n\n`; /** @type {{[method: string]: {req: string, res: string}}} */ const methodsMap = {}; +// const overrideMethodTypes = { +// long: 'string | number' +// }; mtproto.methods.forEach((_method) => { const {method, type, params} = _method; const camelizedMethod = camelizeName(method, true, true); - methodsMap[method] = {req: camelizedMethod, res: processParamType(type, false)}; + methodsMap[method] = {req: camelizedMethod, res: processParamType(type, false/* , overrideMethodTypes */)}; let str = `export type ${camelizedMethod} = {\n`; - const object = processParams(params, {}, false); + const object = processParams(params, {}, false/* , overrideMethodTypes */); const serialized = serializeObject(object, [], '\t'); diff --git a/src/scripts/in/schema.json b/src/scripts/in/schema.json index 4f500a5d..f73a169c 100644 --- a/src/scripts/in/schema.json +++ b/src/scripts/in/schema.json @@ -1,6 +1,6 @@ { "MTProto": {"constructors":[{"id":"481674261","predicate":"vector","params":[],"type":"Vector t"},{"id":"85337187","predicate":"resPQ","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"pq","type":"bytes"},{"name":"server_public_key_fingerprints","type":"Vector"}],"type":"ResPQ"},{"id":"-1443537003","predicate":"p_q_inner_data_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"}],"type":"P_Q_inner_data"},{"id":"1459478408","predicate":"p_q_inner_data_temp_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"},{"name":"expires_in","type":"int"}],"type":"P_Q_inner_data"},{"id":"-790100132","predicate":"server_DH_params_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_answer","type":"bytes"}],"type":"Server_DH_Params"},{"id":"-1249309254","predicate":"server_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"g","type":"int"},{"name":"dh_prime","type":"bytes"},{"name":"g_a","type":"bytes"},{"name":"server_time","type":"int"}],"type":"Server_DH_inner_data"},{"id":"1715713620","predicate":"client_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"retry_id","type":"long"},{"name":"g_b","type":"bytes"}],"type":"Client_DH_Inner_Data"},{"id":"1003222836","predicate":"dh_gen_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash1","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":"1188831161","predicate":"dh_gen_retry","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash2","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":"-1499615742","predicate":"dh_gen_fail","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash3","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":"1973679973","predicate":"bind_auth_key_inner","params":[{"name":"nonce","type":"long"},{"name":"temp_auth_key_id","type":"long"},{"name":"perm_auth_key_id","type":"long"},{"name":"temp_session_id","type":"long"},{"name":"expires_at","type":"int"}],"type":"BindAuthKeyInner"},{"id":"-212046591","predicate":"rpc_result","params":[{"name":"req_msg_id","type":"long"},{"name":"result","type":"Object"}],"type":"RpcResult"},{"id":"558156313","predicate":"rpc_error","params":[{"name":"error_code","type":"int"},{"name":"error_message","type":"string"}],"type":"RpcError"},{"id":"1579864942","predicate":"rpc_answer_unknown","params":[],"type":"RpcDropAnswer"},{"id":"-847714938","predicate":"rpc_answer_dropped_running","params":[],"type":"RpcDropAnswer"},{"id":"-1539647305","predicate":"rpc_answer_dropped","params":[{"name":"msg_id","type":"long"},{"name":"seq_no","type":"int"},{"name":"bytes","type":"int"}],"type":"RpcDropAnswer"},{"id":"155834844","predicate":"future_salt","params":[{"name":"valid_since","type":"int"},{"name":"valid_until","type":"int"},{"name":"salt","type":"long"}],"type":"FutureSalt"},{"id":"-1370486635","predicate":"future_salts","params":[{"name":"req_msg_id","type":"long"},{"name":"now","type":"int"},{"name":"salts","type":"vector"}],"type":"FutureSalts"},{"id":"880243653","predicate":"pong","params":[{"name":"msg_id","type":"long"},{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":"-501201412","predicate":"destroy_session_ok","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":"1658015945","predicate":"destroy_session_none","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":"-1631450872","predicate":"new_session_created","params":[{"name":"first_msg_id","type":"long"},{"name":"unique_id","type":"long"},{"name":"server_salt","type":"long"}],"type":"NewSession"},{"id":"1945237724","predicate":"msg_container","params":[{"name":"messages","type":"vector<%Message>"}],"type":"MessageContainer"},{"id":"1538843921","predicate":"message","params":[{"name":"msg_id","type":"long"},{"name":"seqno","type":"int"},{"name":"bytes","type":"int"},{"name":"body","type":"Object"}],"type":"Message"},{"id":"-530561358","predicate":"msg_copy","params":[{"name":"orig_message","type":"Message"}],"type":"MessageCopy"},{"id":"812830625","predicate":"gzip_packed","params":[{"name":"packed_data","type":"bytes"}],"type":"Object"},{"id":"1658238041","predicate":"msgs_ack","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsAck"},{"id":"-1477445615","predicate":"bad_msg_notification","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"}],"type":"BadMsgNotification"},{"id":"-307542917","predicate":"bad_server_salt","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"},{"name":"new_server_salt","type":"long"}],"type":"BadMsgNotification"},{"id":"2105940488","predicate":"msg_resend_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgResendReq"},{"id":"-630588590","predicate":"msgs_state_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsStateReq"},{"id":"81704317","predicate":"msgs_state_info","params":[{"name":"req_msg_id","type":"long"},{"name":"info","type":"bytes"}],"type":"MsgsStateInfo"},{"id":"-1933520591","predicate":"msgs_all_info","params":[{"name":"msg_ids","type":"Vector"},{"name":"info","type":"bytes"}],"type":"MsgsAllInfo"},{"id":"661470918","predicate":"msg_detailed_info","params":[{"name":"msg_id","type":"long"},{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":"-2137147681","predicate":"msg_new_detailed_info","params":[{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":"-161422892","predicate":"destroy_auth_key_ok","params":[],"type":"DestroyAuthKeyRes"},{"id":"178201177","predicate":"destroy_auth_key_none","params":[],"type":"DestroyAuthKeyRes"},{"id":"-368010477","predicate":"destroy_auth_key_fail","params":[],"type":"DestroyAuthKeyRes"}],"methods":[{"id":"-1099002127","method":"req_pq_multi","params":[{"name":"nonce","type":"int128"}],"type":"ResPQ"},{"id":"-686627650","method":"req_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"public_key_fingerprint","type":"long"},{"name":"encrypted_data","type":"bytes"}],"type":"Server_DH_Params"},{"id":"-184262881","method":"set_client_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_data","type":"bytes"}],"type":"Set_client_DH_params_answer"},{"id":"1491380032","method":"rpc_drop_answer","params":[{"name":"req_msg_id","type":"long"}],"type":"RpcDropAnswer"},{"id":"-1188971260","method":"get_future_salts","params":[{"name":"num","type":"int"}],"type":"FutureSalts"},{"id":"2059302892","method":"ping","params":[{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":"-213746804","method":"ping_delay_disconnect","params":[{"name":"ping_id","type":"long"},{"name":"disconnect_delay","type":"int"}],"type":"Pong"},{"id":"-414113498","method":"destroy_session","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":"-1835453025","method":"http_wait","params":[{"name":"max_delay","type":"int"},{"name":"wait_after","type":"int"},{"name":"max_wait","type":"int"}],"type":"HttpWait"},{"id":"-784117408","method":"destroy_auth_key","params":[],"type":"DestroyAuthKeyRes"}]}, - "API": {"constructors":[{"id":"-1132882121","predicate":"boolFalse","params":[],"type":"Bool"},{"id":"-1720552011","predicate":"boolTrue","params":[],"type":"Bool"},{"id":"1072550713","predicate":"true","params":[],"type":"True"},{"id":"481674261","predicate":"vector","params":[],"type":"Vector t"},{"id":"-994444869","predicate":"error","params":[{"name":"code","type":"int"},{"name":"text","type":"string"}],"type":"Error"},{"id":"1450380236","predicate":"null","params":[],"type":"Null"},{"id":"2134579434","predicate":"inputPeerEmpty","params":[],"type":"InputPeer"},{"id":"2107670217","predicate":"inputPeerSelf","params":[],"type":"InputPeer"},{"id":"396093539","predicate":"inputPeerChat","params":[{"name":"chat_id","type":"int"}],"type":"InputPeer"},{"id":"-1182234929","predicate":"inputUserEmpty","params":[],"type":"InputUser"},{"id":"-138301121","predicate":"inputUserSelf","params":[],"type":"InputUser"},{"id":"-208488460","predicate":"inputPhoneContact","params":[{"name":"client_id","type":"long"},{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"InputContact"},{"id":"-181407105","predicate":"inputFile","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"},{"name":"md5_checksum","type":"string"}],"type":"InputFile"},{"id":"-1771768449","predicate":"inputMediaEmpty","params":[],"type":"InputMedia"},{"id":"505969924","predicate":"inputMediaUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":"-1279654347","predicate":"inputMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputPhoto"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":"-104578748","predicate":"inputMediaGeoPoint","params":[{"name":"geo_point","type":"InputGeoPoint"}],"type":"InputMedia"},{"id":"-122978821","predicate":"inputMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"}],"type":"InputMedia"},{"id":"480546647","predicate":"inputChatPhotoEmpty","params":[],"type":"InputChatPhoto"},{"id":"-968723890","predicate":"inputChatUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"InputChatPhoto"},{"id":"-1991004873","predicate":"inputChatPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputChatPhoto"},{"id":"-457104426","predicate":"inputGeoPointEmpty","params":[],"type":"InputGeoPoint"},{"id":"1210199983","predicate":"inputGeoPoint","params":[{"name":"flags","type":"#"},{"name":"lat","type":"double"},{"name":"long","type":"double"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"InputGeoPoint"},{"id":"483901197","predicate":"inputPhotoEmpty","params":[],"type":"InputPhoto"},{"id":"1001634122","predicate":"inputPhoto","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputPhoto"},{"id":"-539317279","predicate":"inputFileLocation","params":[{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputFileLocation"},{"id":"-1649296275","predicate":"peerUser","params":[{"name":"user_id","type":"int"}],"type":"Peer"},{"id":"-1160714821","predicate":"peerChat","params":[{"name":"chat_id","type":"int"}],"type":"Peer"},{"id":"-1432995067","predicate":"storage.fileUnknown","params":[],"type":"storage.FileType"},{"id":"1086091090","predicate":"storage.filePartial","params":[],"type":"storage.FileType"},{"id":"8322574","predicate":"storage.fileJpeg","params":[],"type":"storage.FileType"},{"id":"-891180321","predicate":"storage.fileGif","params":[],"type":"storage.FileType"},{"id":"172975040","predicate":"storage.filePng","params":[],"type":"storage.FileType"},{"id":"-1373745011","predicate":"storage.filePdf","params":[],"type":"storage.FileType"},{"id":"1384777335","predicate":"storage.fileMp3","params":[],"type":"storage.FileType"},{"id":"1258941372","predicate":"storage.fileMov","params":[],"type":"storage.FileType"},{"id":"-1278304028","predicate":"storage.fileMp4","params":[],"type":"storage.FileType"},{"id":"276907596","predicate":"storage.fileWebp","params":[],"type":"storage.FileType"},{"id":"537022650","predicate":"userEmpty","params":[{"name":"id","type":"int"}],"type":"User"},{"id":"1326562017","predicate":"userProfilePhotoEmpty","params":[],"type":"UserProfilePhoto"},{"id":"-2100168954","predicate":"userProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"UserProfilePhoto"},{"id":"164646985","predicate":"userStatusEmpty","params":[],"type":"UserStatus"},{"id":"-306628279","predicate":"userStatusOnline","params":[{"name":"expires","type":"int"}],"type":"UserStatus"},{"id":"9203775","predicate":"userStatusOffline","params":[{"name":"was_online","type":"int"}],"type":"UserStatus"},{"id":"-1683826688","predicate":"chatEmpty","params":[{"name":"id","type":"int"}],"type":"Chat"},{"id":"1004149726","predicate":"chat","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"kicked","type":"flags.1?true"},{"name":"left","type":"flags.2?true"},{"name":"deactivated","type":"flags.5?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"ChatPhoto"},{"name":"participants_count","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"migrated_to","type":"flags.6?InputChannel"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"}],"type":"Chat"},{"id":"120753115","predicate":"chatForbidden","params":[{"name":"id","type":"int"},{"name":"title","type":"string"}],"type":"Chat"},{"id":"-1977734781","predicate":"chatFull","params":[{"name":"flags","type":"#"},{"name":"can_set_username","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.8?true"},{"name":"id","type":"int"},{"name":"about","type":"string"},{"name":"participants","type":"ChatParticipants"},{"name":"chat_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.13?ExportedChatInvite"},{"name":"bot_info","type":"flags.3?Vector"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"call","type":"flags.12?InputGroupCall"},{"name":"ttl_period","type":"flags.14?int"},{"name":"groupcall_default_join_as","type":"flags.15?Peer"}],"type":"ChatFull"},{"id":"-925415106","predicate":"chatParticipant","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":"-57668565","predicate":"chatParticipantsForbidden","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"int"},{"name":"self_participant","type":"flags.0?ChatParticipant"}],"type":"ChatParticipants"},{"id":"1061556205","predicate":"chatParticipants","params":[{"name":"chat_id","type":"int"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"ChatParticipants"},{"id":"935395612","predicate":"chatPhotoEmpty","params":[],"type":"ChatPhoto"},{"id":"476978193","predicate":"chatPhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"ChatPhoto"},{"id":"-1868117372","predicate":"messageEmpty","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"peer_id","type":"flags.0?Peer"}],"type":"Message"},{"id":"-1125940270","predicate":"message","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"from_scheduled","type":"flags.18?true"},{"name":"legacy","type":"flags.19?true"},{"name":"edit_hide","type":"flags.21?true"},{"name":"pinned","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"message","type":"string"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"reply_markup","type":"flags.6?ReplyMarkup"},{"name":"entities","type":"flags.7?Vector"},{"name":"views","type":"flags.10?int"},{"name":"forwards","type":"flags.10?int"},{"name":"replies","type":"flags.23?MessageReplies"},{"name":"edit_date","type":"flags.15?int"},{"name":"post_author","type":"flags.16?string"},{"name":"grouped_id","type":"flags.17?long"},{"name":"restriction_reason","type":"flags.22?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":"721967202","predicate":"messageService","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"legacy","type":"flags.19?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"action","type":"MessageAction"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":"1038967584","predicate":"messageMediaEmpty","params":[],"type":"MessageMedia"},{"id":"1766936791","predicate":"messageMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"photo","type":"flags.0?Photo"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":"1457575028","predicate":"messageMediaGeo","params":[{"name":"geo","type":"GeoPoint"}],"type":"MessageMedia"},{"id":"-873313984","predicate":"messageMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"user_id","type":"int"}],"type":"MessageMedia"},{"id":"-1618676578","predicate":"messageMediaUnsupported","params":[],"type":"MessageMedia"},{"id":"-1230047312","predicate":"messageActionEmpty","params":[],"type":"MessageAction"},{"id":"-1503425638","predicate":"messageActionChatCreate","params":[{"name":"title","type":"string"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":"-1247687078","predicate":"messageActionChatEditTitle","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":"2144015272","predicate":"messageActionChatEditPhoto","params":[{"name":"photo","type":"Photo"}],"type":"MessageAction"},{"id":"-1780220945","predicate":"messageActionChatDeletePhoto","params":[],"type":"MessageAction"},{"id":"1217033015","predicate":"messageActionChatAddUser","params":[{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":"-1297179892","predicate":"messageActionChatDeleteUser","params":[{"name":"user_id","type":"int"}],"type":"MessageAction"},{"id":"739712882","predicate":"dialog","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"unread_mark","type":"flags.3?true"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"unread_mentions_count","type":"int"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"pts","type":"flags.0?int"},{"name":"draft","type":"flags.1?DraftMessage"},{"name":"folder_id","type":"flags.4?int"}],"type":"Dialog"},{"id":"590459437","predicate":"photoEmpty","params":[{"name":"id","type":"long"}],"type":"Photo"},{"id":"-82216347","predicate":"photo","params":[{"name":"flags","type":"#"},{"name":"has_stickers","type":"flags.0?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"sizes","type":"Vector"},{"name":"video_sizes","type":"flags.1?Vector"},{"name":"dc_id","type":"int"}],"type":"Photo"},{"id":"236446268","predicate":"photoSizeEmpty","params":[{"name":"type","type":"string"}],"type":"PhotoSize"},{"id":"1976012384","predicate":"photoSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"}],"type":"PhotoSize"},{"id":"35527382","predicate":"photoCachedSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":"286776671","predicate":"geoPointEmpty","params":[],"type":"GeoPoint"},{"id":"-1297942941","predicate":"geoPoint","params":[{"name":"flags","type":"#"},{"name":"long","type":"double"},{"name":"lat","type":"double"},{"name":"access_hash","type":"long"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"GeoPoint"},{"id":"1577067778","predicate":"auth.sentCode","params":[{"name":"flags","type":"#"},{"name":"type","type":"auth.SentCodeType"},{"name":"phone_code_hash","type":"string"},{"name":"next_type","type":"flags.1?auth.CodeType"},{"name":"timeout","type":"flags.2?int"}],"type":"auth.SentCode"},{"id":"-855308010","predicate":"auth.authorization","params":[{"name":"flags","type":"#"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"user","type":"User"}],"type":"auth.Authorization"},{"id":"-543777747","predicate":"auth.exportedAuthorization","params":[{"name":"id","type":"int"},{"name":"bytes","type":"bytes"}],"type":"auth.ExportedAuthorization"},{"id":"-1195615476","predicate":"inputNotifyPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputNotifyPeer"},{"id":"423314455","predicate":"inputNotifyUsers","params":[],"type":"InputNotifyPeer"},{"id":"1251338318","predicate":"inputNotifyChats","params":[],"type":"InputNotifyPeer"},{"id":"-1673717362","predicate":"inputPeerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"InputPeerNotifySettings"},{"id":"-1353671392","predicate":"peerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"PeerNotifySettings"},{"id":"1933519201","predicate":"peerSettings","params":[{"name":"flags","type":"#"},{"name":"report_spam","type":"flags.0?true"},{"name":"add_contact","type":"flags.1?true"},{"name":"block_contact","type":"flags.2?true"},{"name":"share_contact","type":"flags.3?true"},{"name":"need_contacts_exception","type":"flags.4?true"},{"name":"report_geo","type":"flags.5?true"},{"name":"autoarchived","type":"flags.7?true"},{"name":"invite_members","type":"flags.8?true"},{"name":"geo_distance","type":"flags.6?int"}],"type":"PeerSettings"},{"id":"-1539849235","predicate":"wallPaper","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"pattern","type":"flags.3?true"},{"name":"dark","type":"flags.4?true"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"document","type":"Document"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":"1490799288","predicate":"inputReportReasonSpam","params":[],"type":"ReportReason"},{"id":"505595789","predicate":"inputReportReasonViolence","params":[],"type":"ReportReason"},{"id":"777640226","predicate":"inputReportReasonPornography","params":[],"type":"ReportReason"},{"id":"-1376497949","predicate":"inputReportReasonChildAbuse","params":[],"type":"ReportReason"},{"id":"-1041980751","predicate":"inputReportReasonOther","params":[],"type":"ReportReason"},{"id":"328899191","predicate":"userFull","params":[{"name":"flags","type":"#"},{"name":"blocked","type":"flags.0?true"},{"name":"phone_calls_available","type":"flags.4?true"},{"name":"phone_calls_private","type":"flags.5?true"},{"name":"can_pin_message","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.12?true"},{"name":"video_calls_available","type":"flags.13?true"},{"name":"user","type":"User"},{"name":"about","type":"flags.1?string"},{"name":"settings","type":"PeerSettings"},{"name":"profile_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"bot_info","type":"flags.3?BotInfo"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"common_chats_count","type":"int"},{"name":"folder_id","type":"flags.11?int"},{"name":"ttl_period","type":"flags.14?int"}],"type":"UserFull"},{"id":"-116274796","predicate":"contact","params":[{"name":"user_id","type":"int"},{"name":"mutual","type":"Bool"}],"type":"Contact"},{"id":"-805141448","predicate":"importedContact","params":[{"name":"user_id","type":"int"},{"name":"client_id","type":"long"}],"type":"ImportedContact"},{"id":"-748155807","predicate":"contactStatus","params":[{"name":"user_id","type":"int"},{"name":"status","type":"UserStatus"}],"type":"ContactStatus"},{"id":"-1219778094","predicate":"contacts.contactsNotModified","params":[],"type":"contacts.Contacts"},{"id":"-353862078","predicate":"contacts.contacts","params":[{"name":"contacts","type":"Vector"},{"name":"saved_count","type":"int"},{"name":"users","type":"Vector"}],"type":"contacts.Contacts"},{"id":"2010127419","predicate":"contacts.importedContacts","params":[{"name":"imported","type":"Vector"},{"name":"popular_invites","type":"Vector"},{"name":"retry_contacts","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":"182326673","predicate":"contacts.blocked","params":[{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":"-513392236","predicate":"contacts.blockedSlice","params":[{"name":"count","type":"int"},{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":"364538944","predicate":"messages.dialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":"1910543603","predicate":"messages.dialogsSlice","params":[{"name":"count","type":"int"},{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":"-1938715001","predicate":"messages.messages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":"978610270","predicate":"messages.messagesSlice","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"count","type":"int"},{"name":"next_rate","type":"flags.0?int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":"1694474197","predicate":"messages.chats","params":[{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":"-438840932","predicate":"messages.chatFull","params":[{"name":"full_chat","type":"ChatFull"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatFull"},{"id":"-1269012015","predicate":"messages.affectedHistory","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"}],"type":"messages.AffectedHistory"},{"id":"1474492012","predicate":"inputMessagesFilterEmpty","params":[],"type":"MessagesFilter"},{"id":"-1777752804","predicate":"inputMessagesFilterPhotos","params":[],"type":"MessagesFilter"},{"id":"-1614803355","predicate":"inputMessagesFilterVideo","params":[],"type":"MessagesFilter"},{"id":"1458172132","predicate":"inputMessagesFilterPhotoVideo","params":[],"type":"MessagesFilter"},{"id":"-1629621880","predicate":"inputMessagesFilterDocument","params":[],"type":"MessagesFilter"},{"id":"2129714567","predicate":"inputMessagesFilterUrl","params":[],"type":"MessagesFilter"},{"id":"-3644025","predicate":"inputMessagesFilterGif","params":[],"type":"MessagesFilter"},{"id":"522914557","predicate":"updateNewMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"1318109142","predicate":"updateMessageID","params":[{"name":"id","type":"int"},{"name":"random_id","type":"long"}],"type":"Update"},{"id":"-1576161051","predicate":"updateDeleteMessages","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"1548249383","predicate":"updateUserTyping","params":[{"name":"user_id","type":"int"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":"-2033525908","predicate":"updateChatUserTyping","params":[{"name":"chat_id","type":"int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":"125178264","predicate":"updateChatParticipants","params":[{"name":"participants","type":"ChatParticipants"}],"type":"Update"},{"id":"469489699","predicate":"updateUserStatus","params":[{"name":"user_id","type":"int"},{"name":"status","type":"UserStatus"}],"type":"Update"},{"id":"-1489818765","predicate":"updateUserName","params":[{"name":"user_id","type":"int"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"username","type":"string"}],"type":"Update"},{"id":"-1791935732","predicate":"updateUserPhoto","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"},{"name":"photo","type":"UserProfilePhoto"},{"name":"previous","type":"Bool"}],"type":"Update"},{"id":"-1519637954","predicate":"updates.state","params":[{"name":"pts","type":"int"},{"name":"qts","type":"int"},{"name":"date","type":"int"},{"name":"seq","type":"int"},{"name":"unread_count","type":"int"}],"type":"updates.State"},{"id":"1567990072","predicate":"updates.differenceEmpty","params":[{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"updates.Difference"},{"id":"16030880","predicate":"updates.difference","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"updates.Difference"},{"id":"-1459938943","predicate":"updates.differenceSlice","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"intermediate_state","type":"updates.State"}],"type":"updates.Difference"},{"id":"-484987010","predicate":"updatesTooLong","params":[],"type":"Updates"},{"id":"-84936653","predicate":"updateShortMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"user_id","type":"int"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":"290961496","predicate":"updateShortChatMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"from_id","type":"int"},{"name":"chat_id","type":"int"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":"2027216577","predicate":"updateShort","params":[{"name":"update","type":"Update"},{"name":"date","type":"int"}],"type":"Updates"},{"id":"1918567619","predicate":"updatesCombined","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq_start","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":"1957577280","predicate":"updates","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":"-1916114267","predicate":"photos.photos","params":[{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":"352657236","predicate":"photos.photosSlice","params":[{"name":"count","type":"int"},{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":"539045032","predicate":"photos.photo","params":[{"name":"photo","type":"Photo"},{"name":"users","type":"Vector"}],"type":"photos.Photo"},{"id":"157948117","predicate":"upload.file","params":[{"name":"type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.File"},{"id":"414687501","predicate":"dcOption","params":[{"name":"flags","type":"#"},{"name":"ipv6","type":"flags.0?true"},{"name":"media_only","type":"flags.1?true"},{"name":"tcpo_only","type":"flags.2?true"},{"name":"cdn","type":"flags.3?true"},{"name":"static","type":"flags.4?true"},{"name":"id","type":"int"},{"name":"ip_address","type":"string"},{"name":"port","type":"int"},{"name":"secret","type":"flags.10?bytes"}],"type":"DcOption"},{"id":"856375399","predicate":"config","params":[{"name":"flags","type":"#"},{"name":"phonecalls_enabled","type":"flags.1?true"},{"name":"default_p2p_contacts","type":"flags.3?true"},{"name":"preload_featured_stickers","type":"flags.4?true"},{"name":"ignore_phone_entities","type":"flags.5?true"},{"name":"revoke_pm_inbox","type":"flags.6?true"},{"name":"blocked_mode","type":"flags.8?true"},{"name":"pfs_enabled","type":"flags.13?true"},{"name":"date","type":"int"},{"name":"expires","type":"int"},{"name":"test_mode","type":"Bool"},{"name":"this_dc","type":"int"},{"name":"dc_options","type":"Vector"},{"name":"dc_txt_domain_name","type":"string"},{"name":"chat_size_max","type":"int"},{"name":"megagroup_size_max","type":"int"},{"name":"forwarded_count_max","type":"int"},{"name":"online_update_period_ms","type":"int"},{"name":"offline_blur_timeout_ms","type":"int"},{"name":"offline_idle_timeout_ms","type":"int"},{"name":"online_cloud_timeout_ms","type":"int"},{"name":"notify_cloud_delay_ms","type":"int"},{"name":"notify_default_delay_ms","type":"int"},{"name":"push_chat_period_ms","type":"int"},{"name":"push_chat_limit","type":"int"},{"name":"saved_gifs_limit","type":"int"},{"name":"edit_time_limit","type":"int"},{"name":"revoke_time_limit","type":"int"},{"name":"revoke_pm_time_limit","type":"int"},{"name":"rating_e_decay","type":"int"},{"name":"stickers_recent_limit","type":"int"},{"name":"stickers_faved_limit","type":"int"},{"name":"channels_read_media_period","type":"int"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"pinned_dialogs_count_max","type":"int"},{"name":"pinned_infolder_count_max","type":"int"},{"name":"call_receive_timeout_ms","type":"int"},{"name":"call_ring_timeout_ms","type":"int"},{"name":"call_connect_timeout_ms","type":"int"},{"name":"call_packet_timeout_ms","type":"int"},{"name":"me_url_prefix","type":"string"},{"name":"autoupdate_url_prefix","type":"flags.7?string"},{"name":"gif_search_username","type":"flags.9?string"},{"name":"venue_search_username","type":"flags.10?string"},{"name":"img_search_username","type":"flags.11?string"},{"name":"static_maps_provider","type":"flags.12?string"},{"name":"caption_length_max","type":"int"},{"name":"message_length_max","type":"int"},{"name":"webfile_dc_id","type":"int"},{"name":"suggested_lang_code","type":"flags.2?string"},{"name":"lang_pack_version","type":"flags.2?int"},{"name":"base_lang_pack_version","type":"flags.2?int"}],"type":"Config"},{"id":"-1910892683","predicate":"nearestDc","params":[{"name":"country","type":"string"},{"name":"this_dc","type":"int"},{"name":"nearest_dc","type":"int"}],"type":"NearestDc"},{"id":"-860107216","predicate":"help.appUpdate","params":[{"name":"flags","type":"#"},{"name":"can_not_skip","type":"flags.0?true"},{"name":"id","type":"int"},{"name":"version","type":"string"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"document","type":"flags.1?Document"},{"name":"url","type":"flags.2?string"},{"name":"sticker","type":"flags.3?Document"}],"type":"help.AppUpdate"},{"id":"-1000708810","predicate":"help.noAppUpdate","params":[],"type":"help.AppUpdate"},{"id":"415997816","predicate":"help.inviteText","params":[{"name":"message","type":"string"}],"type":"help.InviteText"},{"id":"314359194","predicate":"updateNewEncryptedMessage","params":[{"name":"message","type":"EncryptedMessage"},{"name":"qts","type":"int"}],"type":"Update"},{"id":"386986326","predicate":"updateEncryptedChatTyping","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":"-1264392051","predicate":"updateEncryption","params":[{"name":"chat","type":"EncryptedChat"},{"name":"date","type":"int"}],"type":"Update"},{"id":"956179895","predicate":"updateEncryptedMessagesRead","params":[{"name":"chat_id","type":"int"},{"name":"max_date","type":"int"},{"name":"date","type":"int"}],"type":"Update"},{"id":"-1417756512","predicate":"encryptedChatEmpty","params":[{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":"1006044124","predicate":"encryptedChatWaiting","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"}],"type":"EncryptedChat"},{"id":"1651608194","predicate":"encryptedChatRequested","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":"-94974410","predicate":"encryptedChat","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":"505183301","predicate":"encryptedChatDiscarded","params":[{"name":"flags","type":"#"},{"name":"history_deleted","type":"flags.0?true"},{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":"-247351839","predicate":"inputEncryptedChat","params":[{"name":"chat_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedChat"},{"id":"-1038136962","predicate":"encryptedFileEmpty","params":[],"type":"EncryptedFile"},{"id":"1248893260","predicate":"encryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"EncryptedFile"},{"id":"406307684","predicate":"inputEncryptedFileEmpty","params":[],"type":"InputEncryptedFile"},{"id":"1690108678","predicate":"inputEncryptedFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":"1511503333","predicate":"inputEncryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedFile"},{"id":"-182231723","predicate":"inputEncryptedFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":"-317144808","predicate":"encryptedMessage","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"},{"name":"file","type":"EncryptedFile"}],"type":"EncryptedMessage"},{"id":"594758406","predicate":"encryptedMessageService","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"}],"type":"EncryptedMessage"},{"id":"-1058912715","predicate":"messages.dhConfigNotModified","params":[{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":"740433629","predicate":"messages.dhConfig","params":[{"name":"g","type":"int"},{"name":"p","type":"bytes"},{"name":"version","type":"int"},{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":"1443858741","predicate":"messages.sentEncryptedMessage","params":[{"name":"date","type":"int"}],"type":"messages.SentEncryptedMessage"},{"id":"-1802240206","predicate":"messages.sentEncryptedFile","params":[{"name":"date","type":"int"},{"name":"file","type":"EncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":"-95482955","predicate":"inputFileBig","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"}],"type":"InputFile"},{"id":"767652808","predicate":"inputEncryptedFileBigUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":"-364179876","predicate":"updateChatParticipantAdd","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":"1851755554","predicate":"updateChatParticipantDelete","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":"-1906403213","predicate":"updateDcOptions","params":[{"name":"dc_options","type":"Vector"}],"type":"Update"},{"id":"1530447553","predicate":"inputMediaUploadedDocument","params":[{"name":"flags","type":"#"},{"name":"nosound_video","type":"flags.3?true"},{"name":"force_file","type":"flags.4?true"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.2?InputFile"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":"860303448","predicate":"inputMediaDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputDocument"},{"name":"ttl_seconds","type":"flags.0?int"},{"name":"query","type":"flags.1?string"}],"type":"InputMedia"},{"id":"-1666158377","predicate":"messageMediaDocument","params":[{"name":"flags","type":"#"},{"name":"document","type":"flags.0?Document"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":"1928391342","predicate":"inputDocumentEmpty","params":[],"type":"InputDocument"},{"id":"448771445","predicate":"inputDocument","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputDocument"},{"id":"-1160743548","predicate":"inputDocumentFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":"922273905","predicate":"documentEmpty","params":[{"name":"id","type":"long"}],"type":"Document"},{"id":"512177195","predicate":"document","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"mime_type","type":"string"},{"name":"size","type":"int"},{"name":"thumbs","type":"flags.0?Vector"},{"name":"video_thumbs","type":"flags.1?Vector"},{"name":"dc_id","type":"int"},{"name":"attributes","type":"Vector"}],"type":"Document"},{"id":"398898678","predicate":"help.support","params":[{"name":"phone_number","type":"string"},{"name":"user","type":"User"}],"type":"help.Support"},{"id":"-1613493288","predicate":"notifyPeer","params":[{"name":"peer","type":"Peer"}],"type":"NotifyPeer"},{"id":"-1261946036","predicate":"notifyUsers","params":[],"type":"NotifyPeer"},{"id":"-1073230141","predicate":"notifyChats","params":[],"type":"NotifyPeer"},{"id":"-1094555409","predicate":"updateNotifySettings","params":[{"name":"peer","type":"NotifyPeer"},{"name":"notify_settings","type":"PeerNotifySettings"}],"type":"Update"},{"id":"381645902","predicate":"sendMessageTypingAction","params":[],"type":"SendMessageAction"},{"id":"-44119819","predicate":"sendMessageCancelAction","params":[],"type":"SendMessageAction"},{"id":"-1584933265","predicate":"sendMessageRecordVideoAction","params":[],"type":"SendMessageAction"},{"id":"-378127636","predicate":"sendMessageUploadVideoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":"-718310409","predicate":"sendMessageRecordAudioAction","params":[],"type":"SendMessageAction"},{"id":"-212740181","predicate":"sendMessageUploadAudioAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":"-774682074","predicate":"sendMessageUploadPhotoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":"-1441998364","predicate":"sendMessageUploadDocumentAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":"393186209","predicate":"sendMessageGeoLocationAction","params":[],"type":"SendMessageAction"},{"id":"1653390447","predicate":"sendMessageChooseContactAction","params":[],"type":"SendMessageAction"},{"id":"-1290580579","predicate":"contacts.found","params":[{"name":"my_results","type":"Vector"},{"name":"results","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Found"},{"id":"-337352679","predicate":"updateServiceNotification","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"inbox_date","type":"flags.1?int"},{"name":"type","type":"string"},{"name":"message","type":"string"},{"name":"media","type":"MessageMedia"},{"name":"entities","type":"Vector"}],"type":"Update"},{"id":"-496024847","predicate":"userStatusRecently","params":[],"type":"UserStatus"},{"id":"129960444","predicate":"userStatusLastWeek","params":[],"type":"UserStatus"},{"id":"2011940674","predicate":"userStatusLastMonth","params":[],"type":"UserStatus"},{"id":"-298113238","predicate":"updatePrivacy","params":[{"name":"key","type":"PrivacyKey"},{"name":"rules","type":"Vector"}],"type":"Update"},{"id":"1335282456","predicate":"inputPrivacyKeyStatusTimestamp","params":[],"type":"InputPrivacyKey"},{"id":"-1137792208","predicate":"privacyKeyStatusTimestamp","params":[],"type":"PrivacyKey"},{"id":"218751099","predicate":"inputPrivacyValueAllowContacts","params":[],"type":"InputPrivacyRule"},{"id":"407582158","predicate":"inputPrivacyValueAllowAll","params":[],"type":"InputPrivacyRule"},{"id":"320652927","predicate":"inputPrivacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":"195371015","predicate":"inputPrivacyValueDisallowContacts","params":[],"type":"InputPrivacyRule"},{"id":"-697604407","predicate":"inputPrivacyValueDisallowAll","params":[],"type":"InputPrivacyRule"},{"id":"-1877932953","predicate":"inputPrivacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":"-123988","predicate":"privacyValueAllowContacts","params":[],"type":"PrivacyRule"},{"id":"1698855810","predicate":"privacyValueAllowAll","params":[],"type":"PrivacyRule"},{"id":"1297858060","predicate":"privacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":"-125240806","predicate":"privacyValueDisallowContacts","params":[],"type":"PrivacyRule"},{"id":"-1955338397","predicate":"privacyValueDisallowAll","params":[],"type":"PrivacyRule"},{"id":"209668535","predicate":"privacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":"1352683077","predicate":"account.privacyRules","params":[{"name":"rules","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.PrivacyRules"},{"id":"-1194283041","predicate":"accountDaysTTL","params":[{"name":"days","type":"int"}],"type":"AccountDaysTTL"},{"id":"314130811","predicate":"updateUserPhone","params":[{"name":"user_id","type":"int"},{"name":"phone","type":"string"}],"type":"Update"},{"id":"1815593308","predicate":"documentAttributeImageSize","params":[{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":"297109817","predicate":"documentAttributeAnimated","params":[],"type":"DocumentAttribute"},{"id":"1662637586","predicate":"documentAttributeSticker","params":[{"name":"flags","type":"#"},{"name":"mask","type":"flags.1?true"},{"name":"alt","type":"string"},{"name":"stickerset","type":"InputStickerSet"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"DocumentAttribute"},{"id":"250621158","predicate":"documentAttributeVideo","params":[{"name":"flags","type":"#"},{"name":"round_message","type":"flags.0?true"},{"name":"supports_streaming","type":"flags.1?true"},{"name":"duration","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":"-1739392570","predicate":"documentAttributeAudio","params":[{"name":"flags","type":"#"},{"name":"voice","type":"flags.10?true"},{"name":"duration","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"performer","type":"flags.1?string"},{"name":"waveform","type":"flags.2?bytes"}],"type":"DocumentAttribute"},{"id":"358154344","predicate":"documentAttributeFilename","params":[{"name":"file_name","type":"string"}],"type":"DocumentAttribute"},{"id":"-244016606","predicate":"messages.stickersNotModified","params":[],"type":"messages.Stickers"},{"id":"-463889475","predicate":"messages.stickers","params":[{"name":"hash","type":"int"},{"name":"stickers","type":"Vector"}],"type":"messages.Stickers"},{"id":"313694676","predicate":"stickerPack","params":[{"name":"emoticon","type":"string"},{"name":"documents","type":"Vector"}],"type":"StickerPack"},{"id":"-395967805","predicate":"messages.allStickersNotModified","params":[],"type":"messages.AllStickers"},{"id":"-302170017","predicate":"messages.allStickers","params":[{"name":"hash","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.AllStickers"},{"id":"-1667805217","predicate":"updateReadHistoryInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"791617983","predicate":"updateReadHistoryOutbox","params":[{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-2066640507","predicate":"messages.affectedMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"messages.AffectedMessages"},{"id":"2139689491","predicate":"updateWebPage","params":[{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-350980120","predicate":"webPageEmpty","params":[{"name":"id","type":"long"}],"type":"WebPage"},{"id":"-981018084","predicate":"webPagePending","params":[{"name":"id","type":"long"},{"name":"date","type":"int"}],"type":"WebPage"},{"id":"-392411726","predicate":"webPage","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"url","type":"string"},{"name":"display_url","type":"string"},{"name":"hash","type":"int"},{"name":"type","type":"flags.0?string"},{"name":"site_name","type":"flags.1?string"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"photo","type":"flags.4?Photo"},{"name":"embed_url","type":"flags.5?string"},{"name":"embed_type","type":"flags.5?string"},{"name":"embed_width","type":"flags.6?int"},{"name":"embed_height","type":"flags.6?int"},{"name":"duration","type":"flags.7?int"},{"name":"author","type":"flags.8?string"},{"name":"document","type":"flags.9?Document"},{"name":"cached_page","type":"flags.10?Page"},{"name":"attributes","type":"flags.12?Vector"}],"type":"WebPage"},{"id":"-1557277184","predicate":"messageMediaWebPage","params":[{"name":"webpage","type":"WebPage"}],"type":"MessageMedia"},{"id":"-1392388579","predicate":"authorization","params":[{"name":"flags","type":"#"},{"name":"current","type":"flags.0?true"},{"name":"official_app","type":"flags.1?true"},{"name":"password_pending","type":"flags.2?true"},{"name":"hash","type":"long"},{"name":"device_model","type":"string"},{"name":"platform","type":"string"},{"name":"system_version","type":"string"},{"name":"api_id","type":"int"},{"name":"app_name","type":"string"},{"name":"app_version","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"country","type":"string"},{"name":"region","type":"string"}],"type":"Authorization"},{"id":"307276766","predicate":"account.authorizations","params":[{"name":"authorizations","type":"Vector"}],"type":"account.Authorizations"},{"id":"408623183","predicate":"account.password","params":[{"name":"flags","type":"#"},{"name":"has_recovery","type":"flags.0?true"},{"name":"has_secure_values","type":"flags.1?true"},{"name":"has_password","type":"flags.2?true"},{"name":"current_algo","type":"flags.2?PasswordKdfAlgo"},{"name":"srp_B","type":"flags.2?bytes"},{"name":"srp_id","type":"flags.2?long"},{"name":"hint","type":"flags.3?string"},{"name":"email_unconfirmed_pattern","type":"flags.4?string"},{"name":"new_algo","type":"PasswordKdfAlgo"},{"name":"new_secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_random","type":"bytes"},{"name":"pending_reset_date","type":"flags.5?int"}],"type":"account.Password"},{"id":"-1705233435","predicate":"account.passwordSettings","params":[{"name":"flags","type":"#"},{"name":"email","type":"flags.0?string"},{"name":"secure_settings","type":"flags.1?SecureSecretSettings"}],"type":"account.PasswordSettings"},{"id":"-1036572727","predicate":"account.passwordInputSettings","params":[{"name":"flags","type":"#"},{"name":"new_algo","type":"flags.0?PasswordKdfAlgo"},{"name":"new_password_hash","type":"flags.0?bytes"},{"name":"hint","type":"flags.0?string"},{"name":"email","type":"flags.1?string"},{"name":"new_secure_settings","type":"flags.2?SecureSecretSettings"}],"type":"account.PasswordInputSettings"},{"id":"326715557","predicate":"auth.passwordRecovery","params":[{"name":"email_pattern","type":"string"}],"type":"auth.PasswordRecovery"},{"id":"-1052959727","predicate":"inputMediaVenue","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"InputMedia"},{"id":"784356159","predicate":"messageMediaVenue","params":[{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"MessageMedia"},{"id":"-1551583367","predicate":"receivedNotifyMessage","params":[{"name":"id","type":"int"},{"name":"flags","type":"int"}],"type":"ReceivedNotifyMessage"},{"id":"1847917725","predicate":"chatInviteExported","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.0?true"},{"name":"permanent","type":"flags.5?true"},{"name":"link","type":"string"},{"name":"admin_id","type":"int"},{"name":"date","type":"int"},{"name":"start_date","type":"flags.4?int"},{"name":"expire_date","type":"flags.1?int"},{"name":"usage_limit","type":"flags.2?int"},{"name":"usage","type":"flags.3?int"}],"type":"ExportedChatInvite"},{"id":"1516793212","predicate":"chatInviteAlready","params":[{"name":"chat","type":"Chat"}],"type":"ChatInvite"},{"id":"-540871282","predicate":"chatInvite","params":[{"name":"flags","type":"#"},{"name":"channel","type":"flags.0?true"},{"name":"broadcast","type":"flags.1?true"},{"name":"public","type":"flags.2?true"},{"name":"megagroup","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"photo","type":"Photo"},{"name":"participants_count","type":"int"},{"name":"participants","type":"flags.4?Vector"}],"type":"ChatInvite"},{"id":"-123931160","predicate":"messageActionChatJoinedByLink","params":[{"name":"inviter_id","type":"int"}],"type":"MessageAction"},{"id":"1757493555","predicate":"updateReadMessagesContents","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-4838507","predicate":"inputStickerSetEmpty","params":[],"type":"InputStickerSet"},{"id":"-1645763991","predicate":"inputStickerSetID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputStickerSet"},{"id":"-2044933984","predicate":"inputStickerSetShortName","params":[{"name":"short_name","type":"string"}],"type":"InputStickerSet"},{"id":"-673242758","predicate":"stickerSet","params":[{"name":"flags","type":"#"},{"name":"archived","type":"flags.1?true"},{"name":"official","type":"flags.2?true"},{"name":"masks","type":"flags.3?true"},{"name":"animated","type":"flags.5?true"},{"name":"installed_date","type":"flags.0?int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumbs","type":"flags.4?Vector"},{"name":"thumb_dc_id","type":"flags.4?int"},{"name":"thumb_version","type":"flags.4?int"},{"name":"count","type":"int"},{"name":"hash","type":"int"}],"type":"StickerSet"},{"id":"-1240849242","predicate":"messages.stickerSet","params":[{"name":"set","type":"StickerSet"},{"name":"packs","type":"Vector"},{"name":"documents","type":"Vector"}],"type":"messages.StickerSet"},{"id":"-1820043071","predicate":"user","params":[{"name":"flags","type":"#"},{"name":"self","type":"flags.10?true"},{"name":"contact","type":"flags.11?true"},{"name":"mutual_contact","type":"flags.12?true"},{"name":"deleted","type":"flags.13?true"},{"name":"bot","type":"flags.14?true"},{"name":"bot_chat_history","type":"flags.15?true"},{"name":"bot_nochats","type":"flags.16?true"},{"name":"verified","type":"flags.17?true"},{"name":"restricted","type":"flags.18?true"},{"name":"min","type":"flags.20?true"},{"name":"bot_inline_geo","type":"flags.21?true"},{"name":"support","type":"flags.23?true"},{"name":"scam","type":"flags.24?true"},{"name":"apply_min_photo","type":"flags.25?true"},{"name":"fake","type":"flags.26?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"flags.0?long"},{"name":"first_name","type":"flags.1?string"},{"name":"last_name","type":"flags.2?string"},{"name":"username","type":"flags.3?string"},{"name":"phone","type":"flags.4?string"},{"name":"photo","type":"flags.5?UserProfilePhoto"},{"name":"status","type":"flags.6?UserStatus"},{"name":"bot_info_version","type":"flags.14?int"},{"name":"restriction_reason","type":"flags.18?Vector"},{"name":"bot_inline_placeholder","type":"flags.19?string"},{"name":"lang_code","type":"flags.22?string"}],"type":"User"},{"id":"-1032140601","predicate":"botCommand","params":[{"name":"command","type":"string"},{"name":"description","type":"string"}],"type":"BotCommand"},{"id":"-1729618630","predicate":"botInfo","params":[{"name":"user_id","type":"int"},{"name":"description","type":"string"},{"name":"commands","type":"Vector"}],"type":"BotInfo"},{"id":"-1560655744","predicate":"keyboardButton","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":"2002815875","predicate":"keyboardButtonRow","params":[{"name":"buttons","type":"Vector"}],"type":"KeyboardButtonRow"},{"id":"-1606526075","predicate":"replyKeyboardHide","params":[{"name":"flags","type":"#"},{"name":"selective","type":"flags.2?true"}],"type":"ReplyMarkup"},{"id":"-2035021048","predicate":"replyKeyboardForceReply","params":[{"name":"flags","type":"#"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":"-2049074735","predicate":"replyKeyboardMarkup","params":[{"name":"flags","type":"#"},{"name":"resize","type":"flags.0?true"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"rows","type":"Vector"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":"2072935910","predicate":"inputPeerUser","params":[{"name":"user_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":"-668391402","predicate":"inputUser","params":[{"name":"user_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputUser"},{"id":"-1148011883","predicate":"messageEntityUnknown","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"-100378723","predicate":"messageEntityMention","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1868782349","predicate":"messageEntityHashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1827637959","predicate":"messageEntityBotCommand","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1859134776","predicate":"messageEntityUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1692693954","predicate":"messageEntityEmail","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"-1117713463","predicate":"messageEntityBold","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"-2106619040","predicate":"messageEntityItalic","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"681706865","predicate":"messageEntityCode","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1938967520","predicate":"messageEntityPre","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"language","type":"string"}],"type":"MessageEntity"},{"id":"1990644519","predicate":"messageEntityTextUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"url","type":"string"}],"type":"MessageEntity"},{"id":"-1877614335","predicate":"updateShortSentMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":"-292807034","predicate":"inputChannelEmpty","params":[],"type":"InputChannel"},{"id":"-1343524562","predicate":"inputChannel","params":[{"name":"channel_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputChannel"},{"id":"-1109531342","predicate":"peerChannel","params":[{"name":"channel_id","type":"int"}],"type":"Peer"},{"id":"548253432","predicate":"inputPeerChannel","params":[{"name":"channel_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":"-753232354","predicate":"channel","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"left","type":"flags.2?true"},{"name":"broadcast","type":"flags.5?true"},{"name":"verified","type":"flags.7?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"restricted","type":"flags.9?true"},{"name":"signatures","type":"flags.11?true"},{"name":"min","type":"flags.12?true"},{"name":"scam","type":"flags.19?true"},{"name":"has_link","type":"flags.20?true"},{"name":"has_geo","type":"flags.21?true"},{"name":"slowmode_enabled","type":"flags.22?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"fake","type":"flags.25?true"},{"name":"gigagroup","type":"flags.26?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"flags.13?long"},{"name":"title","type":"string"},{"name":"username","type":"flags.6?string"},{"name":"photo","type":"ChatPhoto"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"restriction_reason","type":"flags.9?Vector"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"banned_rights","type":"flags.15?ChatBannedRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"},{"name":"participants_count","type":"flags.17?int"}],"type":"Chat"},{"id":"681420594","predicate":"channelForbidden","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.5?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"until_date","type":"flags.16?int"}],"type":"Chat"},{"id":"2131196633","predicate":"contacts.resolvedPeer","params":[{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ResolvedPeer"},{"id":"1418477459","predicate":"channelFull","params":[{"name":"flags","type":"#"},{"name":"can_view_participants","type":"flags.3?true"},{"name":"can_set_username","type":"flags.6?true"},{"name":"can_set_stickers","type":"flags.7?true"},{"name":"hidden_prehistory","type":"flags.10?true"},{"name":"can_set_location","type":"flags.16?true"},{"name":"has_scheduled","type":"flags.19?true"},{"name":"can_view_stats","type":"flags.20?true"},{"name":"blocked","type":"flags.22?true"},{"name":"id","type":"int"},{"name":"about","type":"string"},{"name":"participants_count","type":"flags.0?int"},{"name":"admins_count","type":"flags.1?int"},{"name":"kicked_count","type":"flags.2?int"},{"name":"banned_count","type":"flags.2?int"},{"name":"online_count","type":"flags.13?int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"chat_photo","type":"Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.23?ExportedChatInvite"},{"name":"bot_info","type":"Vector"},{"name":"migrated_from_chat_id","type":"flags.4?int"},{"name":"migrated_from_max_id","type":"flags.4?int"},{"name":"pinned_msg_id","type":"flags.5?int"},{"name":"stickerset","type":"flags.8?StickerSet"},{"name":"available_min_id","type":"flags.9?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"linked_chat_id","type":"flags.14?int"},{"name":"location","type":"flags.15?ChannelLocation"},{"name":"slowmode_seconds","type":"flags.17?int"},{"name":"slowmode_next_send_date","type":"flags.18?int"},{"name":"stats_dc","type":"flags.12?int"},{"name":"pts","type":"int"},{"name":"call","type":"flags.21?InputGroupCall"},{"name":"ttl_period","type":"flags.24?int"},{"name":"pending_suggestions","type":"flags.25?Vector"},{"name":"groupcall_default_join_as","type":"flags.26?Peer"}],"type":"ChatFull"},{"id":"182649427","predicate":"messageRange","params":[{"name":"min_id","type":"int"},{"name":"max_id","type":"int"}],"type":"MessageRange"},{"id":"1682413576","predicate":"messages.channelMessages","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"pts","type":"int"},{"name":"count","type":"int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":"-1781355374","predicate":"messageActionChannelCreate","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":"-352032773","predicate":"updateChannelTooLong","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"pts","type":"flags.0?int"}],"type":"Update"},{"id":"-1227598250","predicate":"updateChannel","params":[{"name":"channel_id","type":"int"}],"type":"Update"},{"id":"1656358105","predicate":"updateNewChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"856380452","predicate":"updateReadChannelInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"channel_id","type":"int"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"}],"type":"Update"},{"id":"-1015733815","predicate":"updateDeleteChannelMessages","params":[{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-1734268085","predicate":"updateChannelMessageViews","params":[{"name":"channel_id","type":"int"},{"name":"id","type":"int"},{"name":"views","type":"int"}],"type":"Update"},{"id":"1041346555","predicate":"updates.channelDifferenceEmpty","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"}],"type":"updates.ChannelDifference"},{"id":"-1531132162","predicate":"updates.channelDifferenceTooLong","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"timeout","type":"flags.1?int"},{"name":"dialog","type":"Dialog"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":"543450958","predicate":"updates.channelDifference","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"},{"name":"new_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":"-1798033689","predicate":"channelMessagesFilterEmpty","params":[],"type":"ChannelMessagesFilter"},{"id":"-847783593","predicate":"channelMessagesFilter","params":[{"name":"flags","type":"#"},{"name":"exclude_new_messages","type":"flags.1?true"},{"name":"ranges","type":"Vector"}],"type":"ChannelMessagesFilter"},{"id":"367766557","predicate":"channelParticipant","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":"-1557620115","predicate":"channelParticipantSelf","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":"1149094475","predicate":"channelParticipantCreator","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.0?string"}],"type":"ChannelParticipant"},{"id":"-566281095","predicate":"channelParticipantsRecent","params":[],"type":"ChannelParticipantsFilter"},{"id":"-1268741783","predicate":"channelParticipantsAdmins","params":[],"type":"ChannelParticipantsFilter"},{"id":"-1548400251","predicate":"channelParticipantsKicked","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":"-1699676497","predicate":"channels.channelParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipants"},{"id":"-541588713","predicate":"channels.channelParticipant","params":[{"name":"participant","type":"ChannelParticipant"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipant"},{"id":"-636267638","predicate":"chatParticipantCreator","params":[{"name":"user_id","type":"int"}],"type":"ChatParticipant"},{"id":"-489233354","predicate":"chatParticipantAdmin","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":"-1232070311","predicate":"updateChatParticipantAdmin","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"is_admin","type":"Bool"},{"name":"version","type":"int"}],"type":"Update"},{"id":"1371385889","predicate":"messageActionChatMigrateTo","params":[{"name":"channel_id","type":"int"}],"type":"MessageAction"},{"id":"-1336546578","predicate":"messageActionChannelMigrateFrom","params":[{"name":"title","type":"string"},{"name":"chat_id","type":"int"}],"type":"MessageAction"},{"id":"-1328445861","predicate":"channelParticipantsBots","params":[],"type":"ChannelParticipantsFilter"},{"id":"2013922064","predicate":"help.termsOfService","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"id","type":"DataJSON"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"min_age_confirm","type":"flags.1?int"}],"type":"help.TermsOfService"},{"id":"1753886890","predicate":"updateNewStickerSet","params":[{"name":"stickerset","type":"messages.StickerSet"}],"type":"Update"},{"id":"196268545","predicate":"updateStickerSetsOrder","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Update"},{"id":"1135492588","predicate":"updateStickerSets","params":[],"type":"Update"},{"id":"-402498398","predicate":"messages.savedGifsNotModified","params":[],"type":"messages.SavedGifs"},{"id":"772213157","predicate":"messages.savedGifs","params":[{"name":"hash","type":"int"},{"name":"gifs","type":"Vector"}],"type":"messages.SavedGifs"},{"id":"-1821035490","predicate":"updateSavedGifs","params":[],"type":"Update"},{"id":"864077702","predicate":"inputBotInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"1036876423","predicate":"inputBotInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"-2000710887","predicate":"inputBotInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?InputWebDocument"},{"name":"content","type":"flags.5?InputWebDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":"1984755728","predicate":"botInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":"-1937807902","predicate":"botInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":"295067450","predicate":"botInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?WebDocument"},{"name":"content","type":"flags.5?WebDocument"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":"-1803769784","predicate":"messages.botResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"query_id","type":"long"},{"name":"next_offset","type":"flags.1?string"},{"name":"switch_pm","type":"flags.2?InlineBotSwitchPM"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"users","type":"Vector"}],"type":"messages.BotResults"},{"id":"1059076315","predicate":"updateBotInlineQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"peer_type","type":"flags.1?InlineQueryPeerType"},{"name":"offset","type":"string"}],"type":"Update"},{"id":"239663460","predicate":"updateBotInlineSend","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"int"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"id","type":"string"},{"name":"msg_id","type":"flags.1?InputBotInlineMessageID"}],"type":"Update"},{"id":"1358283666","predicate":"inputMessagesFilterVoice","params":[],"type":"MessagesFilter"},{"id":"928101534","predicate":"inputMessagesFilterMusic","params":[],"type":"MessagesFilter"},{"id":"-1107622874","predicate":"inputPrivacyKeyChatInvite","params":[],"type":"InputPrivacyKey"},{"id":"1343122938","predicate":"privacyKeyChatInvite","params":[],"type":"PrivacyKey"},{"id":"1571494644","predicate":"exportedMessageLink","params":[{"name":"link","type":"string"},{"name":"html","type":"string"}],"type":"ExportedMessageLink"},{"id":"1601666510","predicate":"messageFwdHeader","params":[{"name":"flags","type":"#"},{"name":"imported","type":"flags.7?true"},{"name":"from_id","type":"flags.0?Peer"},{"name":"from_name","type":"flags.5?string"},{"name":"date","type":"int"},{"name":"channel_post","type":"flags.2?int"},{"name":"post_author","type":"flags.3?string"},{"name":"saved_from_peer","type":"flags.4?Peer"},{"name":"saved_from_msg_id","type":"flags.4?int"},{"name":"psa_type","type":"flags.6?string"}],"type":"MessageFwdHeader"},{"id":"457133559","predicate":"updateEditChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-1799538451","predicate":"messageActionPinMessage","params":[],"type":"MessageAction"},{"id":"1923290508","predicate":"auth.codeTypeSms","params":[],"type":"auth.CodeType"},{"id":"1948046307","predicate":"auth.codeTypeCall","params":[],"type":"auth.CodeType"},{"id":"577556219","predicate":"auth.codeTypeFlashCall","params":[],"type":"auth.CodeType"},{"id":"1035688326","predicate":"auth.sentCodeTypeApp","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":"-1073693790","predicate":"auth.sentCodeTypeSms","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":"1398007207","predicate":"auth.sentCodeTypeCall","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":"-1425815847","predicate":"auth.sentCodeTypeFlashCall","params":[{"name":"pattern","type":"string"}],"type":"auth.SentCodeType"},{"id":"629866245","predicate":"keyboardButtonUrl","params":[{"name":"text","type":"string"},{"name":"url","type":"string"}],"type":"KeyboardButton"},{"id":"901503851","predicate":"keyboardButtonCallback","params":[{"name":"flags","type":"#"},{"name":"requires_password","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"data","type":"bytes"}],"type":"KeyboardButton"},{"id":"-1318425559","predicate":"keyboardButtonRequestPhone","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":"-59151553","predicate":"keyboardButtonRequestGeoLocation","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":"90744648","predicate":"keyboardButtonSwitchInline","params":[{"name":"flags","type":"#"},{"name":"same_peer","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"query","type":"string"}],"type":"KeyboardButton"},{"id":"1218642516","predicate":"replyInlineMarkup","params":[{"name":"rows","type":"Vector"}],"type":"ReplyMarkup"},{"id":"911761060","predicate":"messages.botCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"has_url","type":"flags.3?true"},{"name":"native_ui","type":"flags.4?true"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"messages.BotCallbackAnswer"},{"id":"-415938591","predicate":"updateBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":"649453030","predicate":"messages.messageEditData","params":[{"name":"flags","type":"#"},{"name":"caption","type":"flags.0?true"}],"type":"messages.MessageEditData"},{"id":"-469536605","predicate":"updateEditMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-1768777083","predicate":"inputBotInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"1098628881","predicate":"inputBotInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"-1494368259","predicate":"inputBotInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"85477117","predicate":"botInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":"-1970903652","predicate":"botInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":"416402882","predicate":"botInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":"-1462213465","predicate":"inputBotInlineResultPhoto","params":[{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"InputPhoto"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":"-459324","predicate":"inputBotInlineResultDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"document","type":"InputDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":"400266251","predicate":"botInlineMediaResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"flags.0?Photo"},{"name":"document","type":"flags.1?Document"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":"-1995686519","predicate":"inputBotInlineMessageID","params":[{"name":"dc_id","type":"int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":"-103646630","predicate":"updateInlineBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"msg_id","type":"InputBotInlineMessageID"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":"1008755359","predicate":"inlineBotSwitchPM","params":[{"name":"text","type":"string"},{"name":"start_param","type":"string"}],"type":"InlineBotSwitchPM"},{"id":"863093588","predicate":"messages.peerDialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"messages.PeerDialogs"},{"id":"-305282981","predicate":"topPeer","params":[{"name":"peer","type":"Peer"},{"name":"rating","type":"double"}],"type":"TopPeer"},{"id":"-1419371685","predicate":"topPeerCategoryBotsPM","params":[],"type":"TopPeerCategory"},{"id":"344356834","predicate":"topPeerCategoryBotsInline","params":[],"type":"TopPeerCategory"},{"id":"104314861","predicate":"topPeerCategoryCorrespondents","params":[],"type":"TopPeerCategory"},{"id":"-1122524854","predicate":"topPeerCategoryGroups","params":[],"type":"TopPeerCategory"},{"id":"371037736","predicate":"topPeerCategoryChannels","params":[],"type":"TopPeerCategory"},{"id":"-75283823","predicate":"topPeerCategoryPeers","params":[{"name":"category","type":"TopPeerCategory"},{"name":"count","type":"int"},{"name":"peers","type":"Vector"}],"type":"TopPeerCategoryPeers"},{"id":"-567906571","predicate":"contacts.topPeersNotModified","params":[],"type":"contacts.TopPeers"},{"id":"1891070632","predicate":"contacts.topPeers","params":[{"name":"categories","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.TopPeers"},{"id":"892193368","predicate":"messageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"int"}],"type":"MessageEntity"},{"id":"546203849","predicate":"inputMessageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"MessageEntity"},{"id":"975236280","predicate":"inputMessagesFilterChatPhotos","params":[],"type":"MessagesFilter"},{"id":"634833351","predicate":"updateReadChannelOutbox","params":[{"name":"channel_id","type":"int"},{"name":"max_id","type":"int"}],"type":"Update"},{"id":"-299124375","predicate":"updateDraftMessage","params":[{"name":"peer","type":"Peer"},{"name":"draft","type":"DraftMessage"}],"type":"Update"},{"id":"453805082","predicate":"draftMessageEmpty","params":[{"name":"flags","type":"#"},{"name":"date","type":"flags.0?int"}],"type":"DraftMessage"},{"id":"-40996577","predicate":"draftMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"},{"name":"date","type":"int"}],"type":"DraftMessage"},{"id":"-1615153660","predicate":"messageActionHistoryClear","params":[],"type":"MessageAction"},{"id":"-958657434","predicate":"messages.featuredStickersNotModified","params":[{"name":"count","type":"int"}],"type":"messages.FeaturedStickers"},{"id":"-1230257343","predicate":"messages.featuredStickers","params":[{"name":"hash","type":"int"},{"name":"count","type":"int"},{"name":"sets","type":"Vector"},{"name":"unread","type":"Vector"}],"type":"messages.FeaturedStickers"},{"id":"1461528386","predicate":"updateReadFeaturedStickers","params":[],"type":"Update"},{"id":"186120336","predicate":"messages.recentStickersNotModified","params":[],"type":"messages.RecentStickers"},{"id":"586395571","predicate":"messages.recentStickers","params":[{"name":"hash","type":"int"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"},{"name":"dates","type":"Vector"}],"type":"messages.RecentStickers"},{"id":"-1706939360","predicate":"updateRecentStickers","params":[],"type":"Update"},{"id":"1338747336","predicate":"messages.archivedStickers","params":[{"name":"count","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.ArchivedStickers"},{"id":"946083368","predicate":"messages.stickerSetInstallResultSuccess","params":[],"type":"messages.StickerSetInstallResult"},{"id":"904138920","predicate":"messages.stickerSetInstallResultArchive","params":[{"name":"sets","type":"Vector"}],"type":"messages.StickerSetInstallResult"},{"id":"1678812626","predicate":"stickerSetCovered","params":[{"name":"set","type":"StickerSet"},{"name":"cover","type":"Document"}],"type":"StickerSetCovered"},{"id":"-1574314746","predicate":"updateConfig","params":[],"type":"Update"},{"id":"861169551","predicate":"updatePtsChanged","params":[],"type":"Update"},{"id":"-440664550","predicate":"inputMediaPhotoExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":"-78455655","predicate":"inputMediaDocumentExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":"872932635","predicate":"stickerSetMultiCovered","params":[{"name":"set","type":"StickerSet"},{"name":"covers","type":"Vector"}],"type":"StickerSetCovered"},{"id":"-1361650766","predicate":"maskCoords","params":[{"name":"n","type":"int"},{"name":"x","type":"double"},{"name":"y","type":"double"},{"name":"zoom","type":"double"}],"type":"MaskCoords"},{"id":"-1744710921","predicate":"documentAttributeHasStickers","params":[],"type":"DocumentAttribute"},{"id":"1251549527","predicate":"inputStickeredMediaPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputStickeredMedia"},{"id":"70813275","predicate":"inputStickeredMediaDocument","params":[{"name":"id","type":"InputDocument"}],"type":"InputStickeredMedia"},{"id":"-1107729093","predicate":"game","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"short_name","type":"string"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"Photo"},{"name":"document","type":"flags.0?Document"}],"type":"Game"},{"id":"1336154098","predicate":"inputBotInlineResultGame","params":[{"name":"id","type":"string"},{"name":"short_name","type":"string"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":"1262639204","predicate":"inputBotInlineMessageGame","params":[{"name":"flags","type":"#"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"-38694904","predicate":"messageMediaGame","params":[{"name":"game","type":"Game"}],"type":"MessageMedia"},{"id":"-750828557","predicate":"inputMediaGame","params":[{"name":"id","type":"InputGame"}],"type":"InputMedia"},{"id":"53231223","predicate":"inputGameID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGame"},{"id":"-1020139510","predicate":"inputGameShortName","params":[{"name":"bot_id","type":"InputUser"},{"name":"short_name","type":"string"}],"type":"InputGame"},{"id":"1358175439","predicate":"keyboardButtonGame","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":"-1834538890","predicate":"messageActionGameScore","params":[{"name":"game_id","type":"long"},{"name":"score","type":"int"}],"type":"MessageAction"},{"id":"1493171408","predicate":"highScore","params":[{"name":"pos","type":"int"},{"name":"user_id","type":"int"},{"name":"score","type":"int"}],"type":"HighScore"},{"id":"-1707344487","predicate":"messages.highScores","params":[{"name":"scores","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.HighScores"},{"id":"1258196845","predicate":"updates.differenceTooLong","params":[{"name":"pts","type":"int"}],"type":"updates.Difference"},{"id":"1081547008","predicate":"updateChannelWebPage","params":[{"name":"channel_id","type":"int"},{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-1663561404","predicate":"messages.chatsSlice","params":[{"name":"count","type":"int"},{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":"-599948721","predicate":"textEmpty","params":[],"type":"RichText"},{"id":"1950782688","predicate":"textPlain","params":[{"name":"text","type":"string"}],"type":"RichText"},{"id":"1730456516","predicate":"textBold","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"-653089380","predicate":"textItalic","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"-1054465340","predicate":"textUnderline","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"-1678197867","predicate":"textStrike","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"1816074681","predicate":"textFixed","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"1009288385","predicate":"textUrl","params":[{"name":"text","type":"RichText"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"}],"type":"RichText"},{"id":"-564523562","predicate":"textEmail","params":[{"name":"text","type":"RichText"},{"name":"email","type":"string"}],"type":"RichText"},{"id":"2120376535","predicate":"textConcat","params":[{"name":"texts","type":"Vector"}],"type":"RichText"},{"id":"324435594","predicate":"pageBlockUnsupported","params":[],"type":"PageBlock"},{"id":"1890305021","predicate":"pageBlockTitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"-1879401953","predicate":"pageBlockSubtitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"-1162877472","predicate":"pageBlockAuthorDate","params":[{"name":"author","type":"RichText"},{"name":"published_date","type":"int"}],"type":"PageBlock"},{"id":"-1076861716","predicate":"pageBlockHeader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"-248793375","predicate":"pageBlockSubheader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"1182402406","predicate":"pageBlockParagraph","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"-1066346178","predicate":"pageBlockPreformatted","params":[{"name":"text","type":"RichText"},{"name":"language","type":"string"}],"type":"PageBlock"},{"id":"1216809369","predicate":"pageBlockFooter","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"-618614392","predicate":"pageBlockDivider","params":[],"type":"PageBlock"},{"id":"-837994576","predicate":"pageBlockAnchor","params":[{"name":"name","type":"string"}],"type":"PageBlock"},{"id":"-454524911","predicate":"pageBlockList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":"641563686","predicate":"pageBlockBlockquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":"1329878739","predicate":"pageBlockPullquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":"391759200","predicate":"pageBlockPhoto","params":[{"name":"flags","type":"#"},{"name":"photo_id","type":"long"},{"name":"caption","type":"PageCaption"},{"name":"url","type":"flags.0?string"},{"name":"webpage_id","type":"flags.0?long"}],"type":"PageBlock"},{"id":"2089805750","predicate":"pageBlockVideo","params":[{"name":"flags","type":"#"},{"name":"autoplay","type":"flags.0?true"},{"name":"loop","type":"flags.1?true"},{"name":"video_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"972174080","predicate":"pageBlockCover","params":[{"name":"cover","type":"PageBlock"}],"type":"PageBlock"},{"id":"-1468953147","predicate":"pageBlockEmbed","params":[{"name":"flags","type":"#"},{"name":"full_width","type":"flags.0?true"},{"name":"allow_scrolling","type":"flags.3?true"},{"name":"url","type":"flags.1?string"},{"name":"html","type":"flags.2?string"},{"name":"poster_photo_id","type":"flags.4?long"},{"name":"w","type":"flags.5?int"},{"name":"h","type":"flags.5?int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"-229005301","predicate":"pageBlockEmbedPost","params":[{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"author_photo_id","type":"long"},{"name":"author","type":"string"},{"name":"date","type":"int"},{"name":"blocks","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"1705048653","predicate":"pageBlockCollage","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"52401552","predicate":"pageBlockSlideshow","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"1930545681","predicate":"webPageNotModified","params":[{"name":"flags","type":"#"},{"name":"cached_page_views","type":"flags.0?int"}],"type":"WebPage"},{"id":"-88417185","predicate":"inputPrivacyKeyPhoneCall","params":[],"type":"InputPrivacyKey"},{"id":"1030105979","predicate":"privacyKeyPhoneCall","params":[],"type":"PrivacyKey"},{"id":"-580219064","predicate":"sendMessageGamePlayAction","params":[],"type":"SendMessageAction"},{"id":"-2048646399","predicate":"phoneCallDiscardReasonMissed","params":[],"type":"PhoneCallDiscardReason"},{"id":"-527056480","predicate":"phoneCallDiscardReasonDisconnect","params":[],"type":"PhoneCallDiscardReason"},{"id":"1471006352","predicate":"phoneCallDiscardReasonHangup","params":[],"type":"PhoneCallDiscardReason"},{"id":"-84416311","predicate":"phoneCallDiscardReasonBusy","params":[],"type":"PhoneCallDiscardReason"},{"id":"1852826908","predicate":"updateDialogPinned","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":"-99664734","predicate":"updatePinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.1?int"},{"name":"order","type":"flags.0?Vector"}],"type":"Update"},{"id":"2104790276","predicate":"dataJSON","params":[{"name":"data","type":"string"}],"type":"DataJSON"},{"id":"-2095595325","predicate":"updateBotWebhookJSON","params":[{"name":"data","type":"DataJSON"}],"type":"Update"},{"id":"-1684914010","predicate":"updateBotWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"},{"name":"timeout","type":"int"}],"type":"Update"},{"id":"-886477832","predicate":"labeledPrice","params":[{"name":"label","type":"string"},{"name":"amount","type":"long"}],"type":"LabeledPrice"},{"id":"215516896","predicate":"invoice","params":[{"name":"flags","type":"#"},{"name":"test","type":"flags.0?true"},{"name":"name_requested","type":"flags.1?true"},{"name":"phone_requested","type":"flags.2?true"},{"name":"email_requested","type":"flags.3?true"},{"name":"shipping_address_requested","type":"flags.4?true"},{"name":"flexible","type":"flags.5?true"},{"name":"phone_to_provider","type":"flags.6?true"},{"name":"email_to_provider","type":"flags.7?true"},{"name":"currency","type":"string"},{"name":"prices","type":"Vector"},{"name":"max_tip_amount","type":"flags.8?long"},{"name":"suggested_tip_amounts","type":"flags.8?Vector"}],"type":"Invoice"},{"id":"-646342540","predicate":"inputMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"start_param","type":"flags.1?string"}],"type":"InputMedia"},{"id":"-368917890","predicate":"paymentCharge","params":[{"name":"id","type":"string"},{"name":"provider_charge_id","type":"string"}],"type":"PaymentCharge"},{"id":"-1892568281","predicate":"messageActionPaymentSentMe","params":[{"name":"flags","type":"#"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"charge","type":"PaymentCharge"}],"type":"MessageAction"},{"id":"-2074799289","predicate":"messageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"receipt_msg_id","type":"flags.2?int"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"start_param","type":"string"}],"type":"MessageMedia"},{"id":"512535275","predicate":"postAddress","params":[{"name":"street_line1","type":"string"},{"name":"street_line2","type":"string"},{"name":"city","type":"string"},{"name":"state","type":"string"},{"name":"country_iso2","type":"string"},{"name":"post_code","type":"string"}],"type":"PostAddress"},{"id":"-1868808300","predicate":"paymentRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"name","type":"flags.0?string"},{"name":"phone","type":"flags.1?string"},{"name":"email","type":"flags.2?string"},{"name":"shipping_address","type":"flags.3?PostAddress"}],"type":"PaymentRequestedInfo"},{"id":"-1344716869","predicate":"keyboardButtonBuy","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":"1080663248","predicate":"messageActionPaymentSent","params":[{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"MessageAction"},{"id":"-842892769","predicate":"paymentSavedCredentialsCard","params":[{"name":"id","type":"string"},{"name":"title","type":"string"}],"type":"PaymentSavedCredentials"},{"id":"475467473","predicate":"webDocument","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":"-1678949555","predicate":"inputWebDocument","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"InputWebDocument"},{"id":"-1036396922","predicate":"inputWebFileLocation","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"}],"type":"InputWebFileLocation"},{"id":"568808380","predicate":"upload.webFile","params":[{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"file_type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.WebFile"},{"id":"-1928649707","predicate":"payments.paymentForm","params":[{"name":"flags","type":"#"},{"name":"can_save_credentials","type":"flags.2?true"},{"name":"password_missing","type":"flags.3?true"},{"name":"form_id","type":"long"},{"name":"bot_id","type":"int"},{"name":"invoice","type":"Invoice"},{"name":"provider_id","type":"int"},{"name":"url","type":"string"},{"name":"native_provider","type":"flags.4?string"},{"name":"native_params","type":"flags.4?DataJSON"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"},{"name":"saved_credentials","type":"flags.1?PaymentSavedCredentials"},{"name":"users","type":"Vector"}],"type":"payments.PaymentForm"},{"id":"-784000893","predicate":"payments.validatedRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"id","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"payments.ValidatedRequestedInfo"},{"id":"1314881805","predicate":"payments.paymentResult","params":[{"name":"updates","type":"Updates"}],"type":"payments.PaymentResult"},{"id":"280319440","predicate":"payments.paymentReceipt","params":[{"name":"flags","type":"#"},{"name":"date","type":"int"},{"name":"bot_id","type":"int"},{"name":"provider_id","type":"int"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.2?WebDocument"},{"name":"invoice","type":"Invoice"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping","type":"flags.1?ShippingOption"},{"name":"tip_amount","type":"flags.3?long"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"credentials_title","type":"string"},{"name":"users","type":"Vector"}],"type":"payments.PaymentReceipt"},{"id":"-74456004","predicate":"payments.savedInfo","params":[{"name":"flags","type":"#"},{"name":"has_saved_credentials","type":"flags.1?true"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"}],"type":"payments.SavedInfo"},{"id":"-1056001329","predicate":"inputPaymentCredentialsSaved","params":[{"name":"id","type":"string"},{"name":"tmp_password","type":"bytes"}],"type":"InputPaymentCredentials"},{"id":"873977640","predicate":"inputPaymentCredentials","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":"-614138572","predicate":"account.tmpPassword","params":[{"name":"tmp_password","type":"bytes"},{"name":"valid_until","type":"int"}],"type":"account.TmpPassword"},{"id":"-1239335713","predicate":"shippingOption","params":[{"name":"id","type":"string"},{"name":"title","type":"string"},{"name":"prices","type":"Vector"}],"type":"ShippingOption"},{"id":"-523384512","predicate":"updateBotShippingQuery","params":[{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"payload","type":"bytes"},{"name":"shipping_address","type":"PostAddress"}],"type":"Update"},{"id":"1563376297","predicate":"updateBotPrecheckoutQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"Update"},{"id":"-6249322","predicate":"inputStickerSetItem","params":[{"name":"flags","type":"#"},{"name":"document","type":"InputDocument"},{"name":"emoji","type":"string"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"InputStickerSetItem"},{"id":"-1425052898","predicate":"updatePhoneCall","params":[{"name":"phone_call","type":"PhoneCall"}],"type":"Update"},{"id":"506920429","predicate":"inputPhoneCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPhoneCall"},{"id":"1399245077","predicate":"phoneCallEmpty","params":[{"name":"id","type":"long"}],"type":"PhoneCall"},{"id":"462375633","predicate":"phoneCallWaiting","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"receive_date","type":"flags.0?int"}],"type":"PhoneCall"},{"id":"-2014659757","predicate":"phoneCallRequested","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":"-1719909046","predicate":"phoneCallAccepted","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":"-2025673089","predicate":"phoneCall","params":[{"name":"flags","type":"#"},{"name":"p2p_allowed","type":"flags.5?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"connections","type":"Vector"},{"name":"start_date","type":"int"}],"type":"PhoneCall"},{"id":"1355435489","predicate":"phoneCallDiscarded","params":[{"name":"flags","type":"#"},{"name":"need_rating","type":"flags.2?true"},{"name":"need_debug","type":"flags.3?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"PhoneCall"},{"id":"-1655957568","predicate":"phoneConnection","params":[{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"peer_tag","type":"bytes"}],"type":"PhoneConnection"},{"id":"-58224696","predicate":"phoneCallProtocol","params":[{"name":"flags","type":"#"},{"name":"udp_p2p","type":"flags.0?true"},{"name":"udp_reflector","type":"flags.1?true"},{"name":"min_layer","type":"int"},{"name":"max_layer","type":"int"},{"name":"library_versions","type":"Vector"}],"type":"PhoneCallProtocol"},{"id":"-326966976","predicate":"phone.phoneCall","params":[{"name":"phone_call","type":"PhoneCall"},{"name":"users","type":"Vector"}],"type":"phone.PhoneCall"},{"id":"-2134272152","predicate":"inputMessagesFilterPhoneCalls","params":[{"name":"flags","type":"#"},{"name":"missed","type":"flags.0?true"}],"type":"MessagesFilter"},{"id":"-2132731265","predicate":"messageActionPhoneCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.2?true"},{"name":"call_id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"MessageAction"},{"id":"2054952868","predicate":"inputMessagesFilterRoundVoice","params":[],"type":"MessagesFilter"},{"id":"-1253451181","predicate":"inputMessagesFilterRoundVideo","params":[],"type":"MessagesFilter"},{"id":"-1997373508","predicate":"sendMessageRecordRoundAction","params":[],"type":"SendMessageAction"},{"id":"608050278","predicate":"sendMessageUploadRoundAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":"-242427324","predicate":"upload.fileCdnRedirect","params":[{"name":"dc_id","type":"int"},{"name":"file_token","type":"bytes"},{"name":"encryption_key","type":"bytes"},{"name":"encryption_iv","type":"bytes"},{"name":"file_hashes","type":"Vector"}],"type":"upload.File"},{"id":"-290921362","predicate":"upload.cdnFileReuploadNeeded","params":[{"name":"request_token","type":"bytes"}],"type":"upload.CdnFile"},{"id":"-1449145777","predicate":"upload.cdnFile","params":[{"name":"bytes","type":"bytes"}],"type":"upload.CdnFile"},{"id":"-914167110","predicate":"cdnPublicKey","params":[{"name":"dc_id","type":"int"},{"name":"public_key","type":"string"}],"type":"CdnPublicKey"},{"id":"1462101002","predicate":"cdnConfig","params":[{"name":"public_keys","type":"Vector"}],"type":"CdnConfig"},{"id":"-283684427","predicate":"pageBlockChannel","params":[{"name":"channel","type":"Chat"}],"type":"PageBlock"},{"id":"-892239370","predicate":"langPackString","params":[{"name":"key","type":"string"},{"name":"value","type":"string"}],"type":"LangPackString"},{"id":"1816636575","predicate":"langPackStringPluralized","params":[{"name":"flags","type":"#"},{"name":"key","type":"string"},{"name":"zero_value","type":"flags.0?string"},{"name":"one_value","type":"flags.1?string"},{"name":"two_value","type":"flags.2?string"},{"name":"few_value","type":"flags.3?string"},{"name":"many_value","type":"flags.4?string"},{"name":"other_value","type":"string"}],"type":"LangPackString"},{"id":"695856818","predicate":"langPackStringDeleted","params":[{"name":"key","type":"string"}],"type":"LangPackString"},{"id":"-209337866","predicate":"langPackDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"strings","type":"Vector"}],"type":"LangPackDifference"},{"id":"-288727837","predicate":"langPackLanguage","params":[{"name":"flags","type":"#"},{"name":"official","type":"flags.0?true"},{"name":"rtl","type":"flags.2?true"},{"name":"beta","type":"flags.3?true"},{"name":"name","type":"string"},{"name":"native_name","type":"string"},{"name":"lang_code","type":"string"},{"name":"base_lang_code","type":"flags.1?string"},{"name":"plural_code","type":"string"},{"name":"strings_count","type":"int"},{"name":"translated_count","type":"int"},{"name":"translations_url","type":"string"}],"type":"LangPackLanguage"},{"id":"1180041828","predicate":"updateLangPackTooLong","params":[{"name":"lang_code","type":"string"}],"type":"Update"},{"id":"1442983757","predicate":"updateLangPack","params":[{"name":"difference","type":"LangPackDifference"}],"type":"Update"},{"id":"-859915345","predicate":"channelParticipantAdmin","params":[{"name":"flags","type":"#"},{"name":"can_edit","type":"flags.0?true"},{"name":"self","type":"flags.1?true"},{"name":"user_id","type":"int"},{"name":"inviter_id","type":"flags.1?int"},{"name":"promoted_by","type":"int"},{"name":"date","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.2?string"}],"type":"ChannelParticipant"},{"id":"1352785878","predicate":"channelParticipantBanned","params":[{"name":"flags","type":"#"},{"name":"left","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"kicked_by","type":"int"},{"name":"date","type":"int"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"ChannelParticipant"},{"id":"338142689","predicate":"channelParticipantsBanned","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":"106343499","predicate":"channelParticipantsSearch","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":"-421545947","predicate":"channelAdminLogEventActionChangeTitle","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":"1427671598","predicate":"channelAdminLogEventActionChangeAbout","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":"1783299128","predicate":"channelAdminLogEventActionChangeUsername","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":"1129042607","predicate":"channelAdminLogEventActionChangePhoto","params":[{"name":"prev_photo","type":"Photo"},{"name":"new_photo","type":"Photo"}],"type":"ChannelAdminLogEventAction"},{"id":"460916654","predicate":"channelAdminLogEventActionToggleInvites","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":"648939889","predicate":"channelAdminLogEventActionToggleSignatures","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":"-370660328","predicate":"channelAdminLogEventActionUpdatePinned","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":"1889215493","predicate":"channelAdminLogEventActionEditMessage","params":[{"name":"prev_message","type":"Message"},{"name":"new_message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":"1121994683","predicate":"channelAdminLogEventActionDeleteMessage","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":"405815507","predicate":"channelAdminLogEventActionParticipantJoin","params":[],"type":"ChannelAdminLogEventAction"},{"id":"-124291086","predicate":"channelAdminLogEventActionParticipantLeave","params":[],"type":"ChannelAdminLogEventAction"},{"id":"-484690728","predicate":"channelAdminLogEventActionParticipantInvite","params":[{"name":"participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":"-422036098","predicate":"channelAdminLogEventActionParticipantToggleBan","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":"-714643696","predicate":"channelAdminLogEventActionParticipantToggleAdmin","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":"995769920","predicate":"channelAdminLogEvent","params":[{"name":"id","type":"long"},{"name":"date","type":"int"},{"name":"user_id","type":"int"},{"name":"action","type":"ChannelAdminLogEventAction"}],"type":"ChannelAdminLogEvent"},{"id":"-309659827","predicate":"channels.adminLogResults","params":[{"name":"events","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.AdminLogResults"},{"id":"-368018716","predicate":"channelAdminLogEventsFilter","params":[{"name":"flags","type":"#"},{"name":"join","type":"flags.0?true"},{"name":"leave","type":"flags.1?true"},{"name":"invite","type":"flags.2?true"},{"name":"ban","type":"flags.3?true"},{"name":"unban","type":"flags.4?true"},{"name":"kick","type":"flags.5?true"},{"name":"unkick","type":"flags.6?true"},{"name":"promote","type":"flags.7?true"},{"name":"demote","type":"flags.8?true"},{"name":"info","type":"flags.9?true"},{"name":"settings","type":"flags.10?true"},{"name":"pinned","type":"flags.11?true"},{"name":"edit","type":"flags.12?true"},{"name":"delete","type":"flags.13?true"},{"name":"group_call","type":"flags.14?true"},{"name":"invites","type":"flags.15?true"}],"type":"ChannelAdminLogEventsFilter"},{"id":"511092620","predicate":"topPeerCategoryPhoneCalls","params":[],"type":"TopPeerCategory"},{"id":"-2143067670","predicate":"pageBlockAudio","params":[{"name":"audio_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"1558266229","predicate":"popularContact","params":[{"name":"client_id","type":"long"},{"name":"importers","type":"int"}],"type":"PopularContact"},{"id":"1200788123","predicate":"messageActionScreenshotTaken","params":[],"type":"MessageAction"},{"id":"-1634752813","predicate":"messages.favedStickersNotModified","params":[],"type":"messages.FavedStickers"},{"id":"-209768682","predicate":"messages.favedStickers","params":[{"name":"hash","type":"int"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"}],"type":"messages.FavedStickers"},{"id":"-451831443","predicate":"updateFavedStickers","params":[],"type":"Update"},{"id":"-1987495099","predicate":"updateChannelReadMessagesContents","params":[{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":"-1040652646","predicate":"inputMessagesFilterMyMentions","params":[],"type":"MessagesFilter"},{"id":"1887741886","predicate":"updateContactsReset","params":[],"type":"Update"},{"id":"-1312568665","predicate":"channelAdminLogEventActionChangeStickerSet","params":[{"name":"prev_stickerset","type":"InputStickerSet"},{"name":"new_stickerset","type":"InputStickerSet"}],"type":"ChannelAdminLogEventAction"},{"id":"-85549226","predicate":"messageActionCustomAction","params":[{"name":"message","type":"string"}],"type":"MessageAction"},{"id":"178373535","predicate":"inputPaymentCredentialsApplePay","params":[{"name":"payment_data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":"-419271411","predicate":"inputMessagesFilterGeo","params":[],"type":"MessagesFilter"},{"id":"-530392189","predicate":"inputMessagesFilterContacts","params":[],"type":"MessagesFilter"},{"id":"1893427255","predicate":"updateChannelAvailableMessages","params":[{"name":"channel_id","type":"int"},{"name":"available_min_id","type":"int"}],"type":"Update"},{"id":"1599903217","predicate":"channelAdminLogEventActionTogglePreHistoryHidden","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":"-1759532989","predicate":"inputMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"stopped","type":"flags.0?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.2?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"}],"type":"InputMedia"},{"id":"-1186937242","predicate":"messageMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"int"},{"name":"proximity_notification_radius","type":"flags.1?int"}],"type":"MessageMedia"},{"id":"1189204285","predicate":"recentMeUrlUnknown","params":[{"name":"url","type":"string"}],"type":"RecentMeUrl"},{"id":"-1917045962","predicate":"recentMeUrlUser","params":[{"name":"url","type":"string"},{"name":"user_id","type":"int"}],"type":"RecentMeUrl"},{"id":"-1608834311","predicate":"recentMeUrlChat","params":[{"name":"url","type":"string"},{"name":"chat_id","type":"int"}],"type":"RecentMeUrl"},{"id":"-347535331","predicate":"recentMeUrlChatInvite","params":[{"name":"url","type":"string"},{"name":"chat_invite","type":"ChatInvite"}],"type":"RecentMeUrl"},{"id":"-1140172836","predicate":"recentMeUrlStickerSet","params":[{"name":"url","type":"string"},{"name":"set","type":"StickerSetCovered"}],"type":"RecentMeUrl"},{"id":"235081943","predicate":"help.recentMeUrls","params":[{"name":"urls","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"help.RecentMeUrls"},{"id":"-266911767","predicate":"channels.channelParticipantsNotModified","params":[],"type":"channels.ChannelParticipants"},{"id":"1951620897","predicate":"messages.messagesNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Messages"},{"id":"482797855","predicate":"inputSingleMedia","params":[{"name":"flags","type":"#"},{"name":"media","type":"InputMedia"},{"name":"random_id","type":"long"},{"name":"message","type":"string"},{"name":"entities","type":"flags.0?Vector"}],"type":"InputSingleMedia"},{"id":"-892779534","predicate":"webAuthorization","params":[{"name":"hash","type":"long"},{"name":"bot_id","type":"int"},{"name":"domain","type":"string"},{"name":"browser","type":"string"},{"name":"platform","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"region","type":"string"}],"type":"WebAuthorization"},{"id":"-313079300","predicate":"account.webAuthorizations","params":[{"name":"authorizations","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.WebAuthorizations"},{"id":"-1502174430","predicate":"inputMessageID","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":"-1160215659","predicate":"inputMessageReplyTo","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":"-2037963464","predicate":"inputMessagePinned","params":[],"type":"InputMessage"},{"id":"-1687559349","predicate":"messageEntityPhone","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1280209983","predicate":"messageEntityCashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"-1410748418","predicate":"messageActionBotAllowed","params":[{"name":"domain","type":"string"}],"type":"MessageAction"},{"id":"-55902537","predicate":"inputDialogPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputDialogPeer"},{"id":"-445792507","predicate":"dialogPeer","params":[{"name":"peer","type":"Peer"}],"type":"DialogPeer"},{"id":"223655517","predicate":"messages.foundStickerSetsNotModified","params":[],"type":"messages.FoundStickerSets"},{"id":"1359533640","predicate":"messages.foundStickerSets","params":[{"name":"hash","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.FoundStickerSets"},{"id":"1648543603","predicate":"fileHash","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"bytes"}],"type":"FileHash"},{"id":"-104284986","predicate":"webDocumentNoProxy","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":"1968737087","predicate":"inputClientProxy","params":[{"name":"address","type":"string"},{"name":"port","type":"int"}],"type":"InputClientProxy"},{"id":"-483352705","predicate":"help.termsOfServiceUpdateEmpty","params":[{"name":"expires","type":"int"}],"type":"help.TermsOfServiceUpdate"},{"id":"686618977","predicate":"help.termsOfServiceUpdate","params":[{"name":"expires","type":"int"},{"name":"terms_of_service","type":"help.TermsOfService"}],"type":"help.TermsOfServiceUpdate"},{"id":"859091184","predicate":"inputSecureFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"InputSecureFile"},{"id":"1399317950","predicate":"inputSecureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputSecureFile"},{"id":"-876089816","predicate":"inputSecureFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":"1679398724","predicate":"secureFileEmpty","params":[],"type":"SecureFile"},{"id":"-534283678","predicate":"secureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"date","type":"int"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureFile"},{"id":"-1964327229","predicate":"secureData","params":[{"name":"data","type":"bytes"},{"name":"data_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureData"},{"id":"2103482845","predicate":"securePlainPhone","params":[{"name":"phone","type":"string"}],"type":"SecurePlainData"},{"id":"569137759","predicate":"securePlainEmail","params":[{"name":"email","type":"string"}],"type":"SecurePlainData"},{"id":"-1658158621","predicate":"secureValueTypePersonalDetails","params":[],"type":"SecureValueType"},{"id":"1034709504","predicate":"secureValueTypePassport","params":[],"type":"SecureValueType"},{"id":"115615172","predicate":"secureValueTypeDriverLicense","params":[],"type":"SecureValueType"},{"id":"-1596951477","predicate":"secureValueTypeIdentityCard","params":[],"type":"SecureValueType"},{"id":"-1717268701","predicate":"secureValueTypeInternalPassport","params":[],"type":"SecureValueType"},{"id":"-874308058","predicate":"secureValueTypeAddress","params":[],"type":"SecureValueType"},{"id":"-63531698","predicate":"secureValueTypeUtilityBill","params":[],"type":"SecureValueType"},{"id":"-1995211763","predicate":"secureValueTypeBankStatement","params":[],"type":"SecureValueType"},{"id":"-1954007928","predicate":"secureValueTypeRentalAgreement","params":[],"type":"SecureValueType"},{"id":"-1713143702","predicate":"secureValueTypePassportRegistration","params":[],"type":"SecureValueType"},{"id":"-368907213","predicate":"secureValueTypeTemporaryRegistration","params":[],"type":"SecureValueType"},{"id":"-1289704741","predicate":"secureValueTypePhone","params":[],"type":"SecureValueType"},{"id":"-1908627474","predicate":"secureValueTypeEmail","params":[],"type":"SecureValueType"},{"id":"411017418","predicate":"secureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?SecureFile"},{"name":"reverse_side","type":"flags.2?SecureFile"},{"name":"selfie","type":"flags.3?SecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"},{"name":"hash","type":"bytes"}],"type":"SecureValue"},{"id":"-618540889","predicate":"inputSecureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?InputSecureFile"},{"name":"reverse_side","type":"flags.2?InputSecureFile"},{"name":"selfie","type":"flags.3?InputSecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"}],"type":"InputSecureValue"},{"id":"-316748368","predicate":"secureValueHash","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"}],"type":"SecureValueHash"},{"id":"-391902247","predicate":"secureValueErrorData","params":[{"name":"type","type":"SecureValueType"},{"name":"data_hash","type":"bytes"},{"name":"field","type":"string"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"12467706","predicate":"secureValueErrorFrontSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"-2037765467","predicate":"secureValueErrorReverseSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"-449327402","predicate":"secureValueErrorSelfie","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"2054162547","predicate":"secureValueErrorFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"1717706985","predicate":"secureValueErrorFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"871426631","predicate":"secureCredentialsEncrypted","params":[{"name":"data","type":"bytes"},{"name":"hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureCredentialsEncrypted"},{"id":"-1389486888","predicate":"account.authorizationForm","params":[{"name":"flags","type":"#"},{"name":"required_types","type":"Vector"},{"name":"values","type":"Vector"},{"name":"errors","type":"Vector"},{"name":"users","type":"Vector"},{"name":"privacy_policy_url","type":"flags.0?string"}],"type":"account.AuthorizationForm"},{"id":"-2128640689","predicate":"account.sentEmailCode","params":[{"name":"email_pattern","type":"string"},{"name":"length","type":"int"}],"type":"account.SentEmailCode"},{"id":"455635795","predicate":"messageActionSecureValuesSentMe","params":[{"name":"values","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"MessageAction"},{"id":"-648257196","predicate":"messageActionSecureValuesSent","params":[{"name":"types","type":"Vector"}],"type":"MessageAction"},{"id":"1722786150","predicate":"help.deepLinkInfoEmpty","params":[],"type":"help.DeepLinkInfo"},{"id":"1783556146","predicate":"help.deepLinkInfo","params":[{"name":"flags","type":"#"},{"name":"update_app","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"help.DeepLinkInfo"},{"id":"289586518","predicate":"savedPhoneContact","params":[{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"date","type":"int"}],"type":"SavedContact"},{"id":"1304052993","predicate":"account.takeout","params":[{"name":"id","type":"long"}],"type":"account.Takeout"},{"id":"700340377","predicate":"inputTakeoutFileLocation","params":[],"type":"InputFileLocation"},{"id":"-513517117","predicate":"updateDialogUnreadMark","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":"-253500010","predicate":"messages.dialogsNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Dialogs"},{"id":"-1625153079","predicate":"inputWebFileGeoPointLocation","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"access_hash","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"zoom","type":"int"},{"name":"scale","type":"int"}],"type":"InputWebFileLocation"},{"id":"-1255369827","predicate":"contacts.topPeersDisabled","params":[],"type":"contacts.TopPeers"},{"id":"-1685456582","predicate":"inputReportReasonCopyright","params":[],"type":"ReportReason"},{"id":"-732254058","predicate":"passwordKdfAlgoUnknown","params":[],"type":"PasswordKdfAlgo"},{"id":"4883767","predicate":"securePasswordKdfAlgoUnknown","params":[],"type":"SecurePasswordKdfAlgo"},{"id":"-1141711456","predicate":"securePasswordKdfAlgoPBKDF2HMACSHA512iter100000","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":"-2042159726","predicate":"securePasswordKdfAlgoSHA512","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":"354925740","predicate":"secureSecretSettings","params":[{"name":"secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_secret","type":"bytes"},{"name":"secure_secret_id","type":"long"}],"type":"SecureSecretSettings"},{"id":"982592842","predicate":"passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow","params":[{"name":"salt1","type":"bytes"},{"name":"salt2","type":"bytes"},{"name":"g","type":"int"},{"name":"p","type":"bytes"}],"type":"PasswordKdfAlgo"},{"id":"-1736378792","predicate":"inputCheckPasswordEmpty","params":[],"type":"InputCheckPasswordSRP"},{"id":"-763367294","predicate":"inputCheckPasswordSRP","params":[{"name":"srp_id","type":"long"},{"name":"A","type":"bytes"},{"name":"M1","type":"bytes"}],"type":"InputCheckPasswordSRP"},{"id":"-2036501105","predicate":"secureValueError","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"-1592506512","predicate":"secureValueErrorTranslationFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"878931416","predicate":"secureValueErrorTranslationFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":"-2103600678","predicate":"secureRequiredType","params":[{"name":"flags","type":"#"},{"name":"native_names","type":"flags.0?true"},{"name":"selfie_required","type":"flags.1?true"},{"name":"translation_required","type":"flags.2?true"},{"name":"type","type":"SecureValueType"}],"type":"SecureRequiredType"},{"id":"41187252","predicate":"secureRequiredTypeOneOf","params":[{"name":"types","type":"Vector"}],"type":"SecureRequiredType"},{"id":"-1078332329","predicate":"help.passportConfigNotModified","params":[],"type":"help.PassportConfig"},{"id":"-1600596305","predicate":"help.passportConfig","params":[{"name":"hash","type":"int"},{"name":"countries_langs","type":"DataJSON"}],"type":"help.PassportConfig"},{"id":"488313413","predicate":"inputAppEvent","params":[{"name":"time","type":"double"},{"name":"type","type":"string"},{"name":"peer","type":"long"},{"name":"data","type":"JSONValue"}],"type":"InputAppEvent"},{"id":"-1059185703","predicate":"jsonObjectValue","params":[{"name":"key","type":"string"},{"name":"value","type":"JSONValue"}],"type":"JSONObjectValue"},{"id":"1064139624","predicate":"jsonNull","params":[],"type":"JSONValue"},{"id":"-952869270","predicate":"jsonBool","params":[{"name":"value","type":"Bool"}],"type":"JSONValue"},{"id":"736157604","predicate":"jsonNumber","params":[{"name":"value","type":"double"}],"type":"JSONValue"},{"id":"-1222740358","predicate":"jsonString","params":[{"name":"value","type":"string"}],"type":"JSONValue"},{"id":"-146520221","predicate":"jsonArray","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":"-1715350371","predicate":"jsonObject","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":"-1311015810","predicate":"inputNotifyBroadcasts","params":[],"type":"InputNotifyPeer"},{"id":"-703403793","predicate":"notifyBroadcasts","params":[],"type":"NotifyPeer"},{"id":"-311786236","predicate":"textSubscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"-939827711","predicate":"textSuperscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"55281185","predicate":"textMarked","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":"483104362","predicate":"textPhone","params":[{"name":"text","type":"RichText"},{"name":"phone","type":"string"}],"type":"RichText"},{"id":"136105807","predicate":"textImage","params":[{"name":"document_id","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"RichText"},{"id":"504660880","predicate":"pageBlockKicker","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":"878078826","predicate":"pageTableCell","params":[{"name":"flags","type":"#"},{"name":"header","type":"flags.0?true"},{"name":"align_center","type":"flags.3?true"},{"name":"align_right","type":"flags.4?true"},{"name":"valign_middle","type":"flags.5?true"},{"name":"valign_bottom","type":"flags.6?true"},{"name":"text","type":"flags.7?RichText"},{"name":"colspan","type":"flags.1?int"},{"name":"rowspan","type":"flags.2?int"}],"type":"PageTableCell"},{"id":"-524237339","predicate":"pageTableRow","params":[{"name":"cells","type":"Vector"}],"type":"PageTableRow"},{"id":"-1085412734","predicate":"pageBlockTable","params":[{"name":"flags","type":"#"},{"name":"bordered","type":"flags.0?true"},{"name":"striped","type":"flags.1?true"},{"name":"title","type":"RichText"},{"name":"rows","type":"Vector"}],"type":"PageBlock"},{"id":"1869903447","predicate":"pageCaption","params":[{"name":"text","type":"RichText"},{"name":"credit","type":"RichText"}],"type":"PageCaption"},{"id":"-1188055347","predicate":"pageListItemText","params":[{"name":"text","type":"RichText"}],"type":"PageListItem"},{"id":"635466748","predicate":"pageListItemBlocks","params":[{"name":"blocks","type":"Vector"}],"type":"PageListItem"},{"id":"1577484359","predicate":"pageListOrderedItemText","params":[{"name":"num","type":"string"},{"name":"text","type":"RichText"}],"type":"PageListOrderedItem"},{"id":"-1730311882","predicate":"pageListOrderedItemBlocks","params":[{"name":"num","type":"string"},{"name":"blocks","type":"Vector"}],"type":"PageListOrderedItem"},{"id":"-1702174239","predicate":"pageBlockOrderedList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":"1987480557","predicate":"pageBlockDetails","params":[{"name":"flags","type":"#"},{"name":"open","type":"flags.0?true"},{"name":"blocks","type":"Vector"},{"name":"title","type":"RichText"}],"type":"PageBlock"},{"id":"-1282352120","predicate":"pageRelatedArticle","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"title","type":"flags.0?string"},{"name":"description","type":"flags.1?string"},{"name":"photo_id","type":"flags.2?long"},{"name":"author","type":"flags.3?string"},{"name":"published_date","type":"flags.4?int"}],"type":"PageRelatedArticle"},{"id":"370236054","predicate":"pageBlockRelatedArticles","params":[{"name":"title","type":"RichText"},{"name":"articles","type":"Vector"}],"type":"PageBlock"},{"id":"-1538310410","predicate":"pageBlockMap","params":[{"name":"geo","type":"GeoPoint"},{"name":"zoom","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":"-1738178803","predicate":"page","params":[{"name":"flags","type":"#"},{"name":"part","type":"flags.0?true"},{"name":"rtl","type":"flags.1?true"},{"name":"v2","type":"flags.2?true"},{"name":"url","type":"string"},{"name":"blocks","type":"Vector"},{"name":"photos","type":"Vector"},{"name":"documents","type":"Vector"},{"name":"views","type":"flags.3?int"}],"type":"Page"},{"id":"-610373422","predicate":"inputPrivacyKeyPhoneP2P","params":[],"type":"InputPrivacyKey"},{"id":"961092808","predicate":"privacyKeyPhoneP2P","params":[],"type":"PrivacyKey"},{"id":"894777186","predicate":"textAnchor","params":[{"name":"text","type":"RichText"},{"name":"name","type":"string"}],"type":"RichText"},{"id":"-1945767479","predicate":"help.supportName","params":[{"name":"name","type":"string"}],"type":"help.SupportName"},{"id":"-206688531","predicate":"help.userInfoEmpty","params":[],"type":"help.UserInfo"},{"id":"32192344","predicate":"help.userInfo","params":[{"name":"message","type":"string"},{"name":"entities","type":"Vector"},{"name":"author","type":"string"},{"name":"date","type":"int"}],"type":"help.UserInfo"},{"id":"-202219658","predicate":"messageActionContactSignUp","params":[],"type":"MessageAction"},{"id":"-1398708869","predicate":"updateMessagePoll","params":[{"name":"flags","type":"#"},{"name":"poll_id","type":"long"},{"name":"poll","type":"flags.0?Poll"},{"name":"results","type":"PollResults"}],"type":"Update"},{"id":"1823064809","predicate":"pollAnswer","params":[{"name":"text","type":"string"},{"name":"option","type":"bytes"}],"type":"PollAnswer"},{"id":"-2032041631","predicate":"poll","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"closed","type":"flags.0?true"},{"name":"public_voters","type":"flags.1?true"},{"name":"multiple_choice","type":"flags.2?true"},{"name":"quiz","type":"flags.3?true"},{"name":"question","type":"string"},{"name":"answers","type":"Vector"},{"name":"close_period","type":"flags.4?int"},{"name":"close_date","type":"flags.5?int"}],"type":"Poll"},{"id":"997055186","predicate":"pollAnswerVoters","params":[{"name":"flags","type":"#"},{"name":"chosen","type":"flags.0?true"},{"name":"correct","type":"flags.1?true"},{"name":"option","type":"bytes"},{"name":"voters","type":"int"}],"type":"PollAnswerVoters"},{"id":"-1159937629","predicate":"pollResults","params":[{"name":"flags","type":"#"},{"name":"min","type":"flags.0?true"},{"name":"results","type":"flags.1?Vector"},{"name":"total_voters","type":"flags.2?int"},{"name":"recent_voters","type":"flags.3?Vector"},{"name":"solution","type":"flags.4?string"},{"name":"solution_entities","type":"flags.4?Vector"}],"type":"PollResults"},{"id":"261416433","predicate":"inputMediaPoll","params":[{"name":"flags","type":"#"},{"name":"poll","type":"Poll"},{"name":"correct_answers","type":"flags.0?Vector"},{"name":"solution","type":"flags.1?string"},{"name":"solution_entities","type":"flags.1?Vector"}],"type":"InputMedia"},{"id":"1272375192","predicate":"messageMediaPoll","params":[{"name":"poll","type":"Poll"},{"name":"results","type":"PollResults"}],"type":"MessageMedia"},{"id":"-264117680","predicate":"chatOnlines","params":[{"name":"onlines","type":"int"}],"type":"ChatOnlines"},{"id":"1202287072","predicate":"statsURL","params":[{"name":"url","type":"string"}],"type":"StatsURL"},{"id":"-525288402","predicate":"photoStrippedSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":"1605510357","predicate":"chatAdminRights","params":[{"name":"flags","type":"#"},{"name":"change_info","type":"flags.0?true"},{"name":"post_messages","type":"flags.1?true"},{"name":"edit_messages","type":"flags.2?true"},{"name":"delete_messages","type":"flags.3?true"},{"name":"ban_users","type":"flags.4?true"},{"name":"invite_users","type":"flags.5?true"},{"name":"pin_messages","type":"flags.7?true"},{"name":"add_admins","type":"flags.9?true"},{"name":"anonymous","type":"flags.10?true"},{"name":"manage_call","type":"flags.11?true"},{"name":"other","type":"flags.12?true"}],"type":"ChatAdminRights"},{"id":"-1626209256","predicate":"chatBannedRights","params":[{"name":"flags","type":"#"},{"name":"view_messages","type":"flags.0?true"},{"name":"send_messages","type":"flags.1?true"},{"name":"send_media","type":"flags.2?true"},{"name":"send_stickers","type":"flags.3?true"},{"name":"send_gifs","type":"flags.4?true"},{"name":"send_games","type":"flags.5?true"},{"name":"send_inline","type":"flags.6?true"},{"name":"embed_links","type":"flags.7?true"},{"name":"send_polls","type":"flags.8?true"},{"name":"change_info","type":"flags.10?true"},{"name":"invite_users","type":"flags.15?true"},{"name":"pin_messages","type":"flags.17?true"},{"name":"until_date","type":"int"}],"type":"ChatBannedRights"},{"id":"1421875280","predicate":"updateChatDefaultBannedRights","params":[{"name":"peer","type":"Peer"},{"name":"default_banned_rights","type":"ChatBannedRights"},{"name":"version","type":"int"}],"type":"Update"},{"id":"-433014407","predicate":"inputWallPaper","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputWallPaper"},{"id":"1913199744","predicate":"inputWallPaperSlug","params":[{"name":"slug","type":"string"}],"type":"InputWallPaper"},{"id":"-1150621555","predicate":"channelParticipantsContacts","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":"771095562","predicate":"channelAdminLogEventActionDefaultBannedRights","params":[{"name":"prev_banned_rights","type":"ChatBannedRights"},{"name":"new_banned_rights","type":"ChatBannedRights"}],"type":"ChannelAdminLogEventAction"},{"id":"-1895328189","predicate":"channelAdminLogEventActionStopPoll","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":"471437699","predicate":"account.wallPapersNotModified","params":[],"type":"account.WallPapers"},{"id":"1881892265","predicate":"account.wallPapers","params":[{"name":"hash","type":"int"},{"name":"wallpapers","type":"Vector"}],"type":"account.WallPapers"},{"id":"-557924733","predicate":"codeSettings","params":[{"name":"flags","type":"#"},{"name":"allow_flashcall","type":"flags.0?true"},{"name":"current_number","type":"flags.1?true"},{"name":"allow_app_hash","type":"flags.4?true"}],"type":"CodeSettings"},{"id":"499236004","predicate":"wallPaperSettings","params":[{"name":"flags","type":"#"},{"name":"blur","type":"flags.1?true"},{"name":"motion","type":"flags.2?true"},{"name":"background_color","type":"flags.0?int"},{"name":"second_background_color","type":"flags.4?int"},{"name":"third_background_color","type":"flags.5?int"},{"name":"fourth_background_color","type":"flags.6?int"},{"name":"intensity","type":"flags.3?int"},{"name":"rotation","type":"flags.4?int"}],"type":"WallPaperSettings"},{"id":"-532532493","predicate":"autoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"disabled","type":"flags.0?true"},{"name":"video_preload_large","type":"flags.1?true"},{"name":"audio_preload_next","type":"flags.2?true"},{"name":"phonecalls_less_data","type":"flags.3?true"},{"name":"photo_size_max","type":"int"},{"name":"video_size_max","type":"int"},{"name":"file_size_max","type":"int"},{"name":"video_upload_maxbitrate","type":"int"}],"type":"AutoDownloadSettings"},{"id":"1674235686","predicate":"account.autoDownloadSettings","params":[{"name":"low","type":"AutoDownloadSettings"},{"name":"medium","type":"AutoDownloadSettings"},{"name":"high","type":"AutoDownloadSettings"}],"type":"account.AutoDownloadSettings"},{"id":"-709641735","predicate":"emojiKeyword","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":"594408994","predicate":"emojiKeywordDeleted","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":"1556570557","predicate":"emojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"keywords","type":"Vector"}],"type":"EmojiKeywordsDifference"},{"id":"-1519029347","predicate":"emojiURL","params":[{"name":"url","type":"string"}],"type":"EmojiURL"},{"id":"-1275374751","predicate":"emojiLanguage","params":[{"name":"lang_code","type":"string"}],"type":"EmojiLanguage"},{"id":"-1529000952","predicate":"inputPrivacyKeyForwards","params":[],"type":"InputPrivacyKey"},{"id":"1777096355","predicate":"privacyKeyForwards","params":[],"type":"PrivacyKey"},{"id":"1461304012","predicate":"inputPrivacyKeyProfilePhoto","params":[],"type":"InputPrivacyKey"},{"id":"-1777000467","predicate":"privacyKeyProfilePhoto","params":[],"type":"PrivacyKey"},{"id":"1075322878","predicate":"inputPhotoFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":"-667654413","predicate":"inputPhotoLegacyFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"}],"type":"InputFileLocation"},{"id":"925204121","predicate":"inputPeerPhotoFileLocation","params":[{"name":"flags","type":"#"},{"name":"big","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"long"}],"type":"InputFileLocation"},{"id":"-1652231205","predicate":"inputStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb_version","type":"int"}],"type":"InputFileLocation"},{"id":"-11252123","predicate":"folder","params":[{"name":"flags","type":"#"},{"name":"autofill_new_broadcasts","type":"flags.0?true"},{"name":"autofill_public_groups","type":"flags.1?true"},{"name":"autofill_new_correspondents","type":"flags.2?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"flags.3?ChatPhoto"}],"type":"Folder"},{"id":"1908216652","predicate":"dialogFolder","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"folder","type":"Folder"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"unread_muted_peers_count","type":"int"},{"name":"unread_unmuted_peers_count","type":"int"},{"name":"unread_muted_messages_count","type":"int"},{"name":"unread_unmuted_messages_count","type":"int"}],"type":"Dialog"},{"id":"1684014375","predicate":"inputDialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"InputDialogPeer"},{"id":"1363483106","predicate":"dialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"DialogPeer"},{"id":"-70073706","predicate":"inputFolderPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"folder_id","type":"int"}],"type":"InputFolderPeer"},{"id":"-373643672","predicate":"folderPeer","params":[{"name":"peer","type":"Peer"},{"name":"folder_id","type":"int"}],"type":"FolderPeer"},{"id":"422972864","predicate":"updateFolderPeers","params":[{"name":"folder_peers","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"756118935","predicate":"inputUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"int"}],"type":"InputUser"},{"id":"707290417","predicate":"inputChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"int"}],"type":"InputChannel"},{"id":"398123750","predicate":"inputPeerUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"int"}],"type":"InputPeer"},{"id":"-1667893317","predicate":"inputPeerChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"int"}],"type":"InputPeer"},{"id":"55761658","predicate":"inputPrivacyKeyPhoneNumber","params":[],"type":"InputPrivacyKey"},{"id":"-778378131","predicate":"privacyKeyPhoneNumber","params":[],"type":"PrivacyKey"},{"id":"-1472172887","predicate":"topPeerCategoryForwardUsers","params":[],"type":"TopPeerCategory"},{"id":"-68239120","predicate":"topPeerCategoryForwardChats","params":[],"type":"TopPeerCategory"},{"id":"-1569748965","predicate":"channelAdminLogEventActionChangeLinkedChat","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":"-398136321","predicate":"messages.searchCounter","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"filter","type":"MessagesFilter"},{"name":"count","type":"int"}],"type":"messages.SearchCounter"},{"id":"280464681","predicate":"keyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.0?string"},{"name":"url","type":"string"},{"name":"button_id","type":"int"}],"type":"KeyboardButton"},{"id":"-802258988","predicate":"inputKeyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.1?string"},{"name":"url","type":"string"},{"name":"bot","type":"InputUser"}],"type":"KeyboardButton"},{"id":"-1831650802","predicate":"urlAuthResultRequest","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"bot","type":"User"},{"name":"domain","type":"string"}],"type":"UrlAuthResult"},{"id":"-1886646706","predicate":"urlAuthResultAccepted","params":[{"name":"url","type":"string"}],"type":"UrlAuthResult"},{"id":"-1445536993","predicate":"urlAuthResultDefault","params":[],"type":"UrlAuthResult"},{"id":"1283572154","predicate":"inputPrivacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":"-668769361","predicate":"inputPrivacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":"415136107","predicate":"privacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":"-1397881200","predicate":"privacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":"-1672577397","predicate":"messageEntityUnderline","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"-1090087980","predicate":"messageEntityStrike","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"34469328","predicate":"messageEntityBlockquote","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"1786671974","predicate":"updatePeerSettings","params":[{"name":"peer","type":"Peer"},{"name":"settings","type":"PeerSettings"}],"type":"Update"},{"id":"-1078612597","predicate":"channelLocationEmpty","params":[],"type":"ChannelLocation"},{"id":"547062491","predicate":"channelLocation","params":[{"name":"geo_point","type":"GeoPoint"},{"name":"address","type":"string"}],"type":"ChannelLocation"},{"id":"-901375139","predicate":"peerLocated","params":[{"name":"peer","type":"Peer"},{"name":"expires","type":"int"},{"name":"distance","type":"int"}],"type":"PeerLocated"},{"id":"-1263546448","predicate":"updatePeerLocated","params":[{"name":"peers","type":"Vector"}],"type":"Update"},{"id":"241923758","predicate":"channelAdminLogEventActionChangeLocation","params":[{"name":"prev_value","type":"ChannelLocation"},{"name":"new_value","type":"ChannelLocation"}],"type":"ChannelAdminLogEventAction"},{"id":"-606798099","predicate":"inputReportReasonGeoIrrelevant","params":[],"type":"ReportReason"},{"id":"1401984889","predicate":"channelAdminLogEventActionToggleSlowMode","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":"1148485274","predicate":"auth.authorizationSignUpRequired","params":[{"name":"flags","type":"#"},{"name":"terms_of_service","type":"flags.0?help.TermsOfService"}],"type":"auth.Authorization"},{"id":"-666824391","predicate":"payments.paymentVerificationNeeded","params":[{"name":"url","type":"string"}],"type":"payments.PaymentResult"},{"id":"42402760","predicate":"inputStickerSetAnimatedEmoji","params":[],"type":"InputStickerSet"},{"id":"967122427","predicate":"updateNewScheduledMessage","params":[{"name":"message","type":"Message"}],"type":"Update"},{"id":"-1870238482","predicate":"updateDeleteScheduledMessages","params":[{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":"-797791052","predicate":"restrictionReason","params":[{"name":"platform","type":"string"},{"name":"reason","type":"string"},{"name":"text","type":"string"}],"type":"RestrictionReason"},{"id":"1012306921","predicate":"inputTheme","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputTheme"},{"id":"-175567375","predicate":"inputThemeSlug","params":[{"name":"slug","type":"string"}],"type":"InputTheme"},{"id":"42930452","predicate":"theme","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?Document"},{"name":"settings","type":"flags.3?ThemeSettings"},{"name":"installs_count","type":"int"}],"type":"Theme"},{"id":"-199313886","predicate":"account.themesNotModified","params":[],"type":"account.Themes"},{"id":"2137482273","predicate":"account.themes","params":[{"name":"hash","type":"int"},{"name":"themes","type":"Vector"}],"type":"account.Themes"},{"id":"-2112423005","predicate":"updateTheme","params":[{"name":"theme","type":"Theme"}],"type":"Update"},{"id":"-786326563","predicate":"inputPrivacyKeyAddedByPhone","params":[],"type":"InputPrivacyKey"},{"id":"1124062251","predicate":"privacyKeyAddedByPhone","params":[],"type":"PrivacyKey"},{"id":"-2027964103","predicate":"updateGeoLiveViewed","params":[{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"}],"type":"Update"},{"id":"1448076945","predicate":"updateLoginToken","params":[],"type":"Update"},{"id":"1654593920","predicate":"auth.loginToken","params":[{"name":"expires","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":"110008598","predicate":"auth.loginTokenMigrateTo","params":[{"name":"dc_id","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":"957176926","predicate":"auth.loginTokenSuccess","params":[{"name":"authorization","type":"auth.Authorization"}],"type":"auth.LoginToken"},{"id":"1474462241","predicate":"account.contentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"},{"name":"sensitive_can_change","type":"flags.1?true"}],"type":"account.ContentSettings"},{"id":"-1456996667","predicate":"messages.inactiveChats","params":[{"name":"dates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.InactiveChats"},{"id":"-1012849566","predicate":"baseThemeClassic","params":[],"type":"BaseTheme"},{"id":"-69724536","predicate":"baseThemeDay","params":[],"type":"BaseTheme"},{"id":"-1212997976","predicate":"baseThemeNight","params":[],"type":"BaseTheme"},{"id":"1834973166","predicate":"baseThemeTinted","params":[],"type":"BaseTheme"},{"id":"1527845466","predicate":"baseThemeArctic","params":[],"type":"BaseTheme"},{"id":"-1770371538","predicate":"inputWallPaperNoFile","params":[{"name":"id","type":"long"}],"type":"InputWallPaper"},{"id":"-528465642","predicate":"wallPaperNoFile","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"default","type":"flags.1?true"},{"name":"dark","type":"flags.4?true"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":"-1118798639","predicate":"inputThemeSettings","params":[{"name":"flags","type":"#"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"message_top_color","type":"flags.0?int"},{"name":"message_bottom_color","type":"flags.0?int"},{"name":"wallpaper","type":"flags.1?InputWallPaper"},{"name":"wallpaper_settings","type":"flags.1?WallPaperSettings"}],"type":"InputThemeSettings"},{"id":"-1676371894","predicate":"themeSettings","params":[{"name":"flags","type":"#"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"message_top_color","type":"flags.0?int"},{"name":"message_bottom_color","type":"flags.0?int"},{"name":"wallpaper","type":"flags.1?WallPaper"}],"type":"ThemeSettings"},{"id":"1421174295","predicate":"webPageAttributeTheme","params":[{"name":"flags","type":"#"},{"name":"documents","type":"flags.0?Vector"},{"name":"settings","type":"flags.1?ThemeSettings"}],"type":"WebPageAttribute"},{"id":"938909451","predicate":"updateMessagePollVote","params":[{"name":"poll_id","type":"long"},{"name":"user_id","type":"int"},{"name":"options","type":"Vector"},{"name":"qts","type":"int"}],"type":"Update"},{"id":"-1567730343","predicate":"messageUserVote","params":[{"name":"user_id","type":"int"},{"name":"option","type":"bytes"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":"909603888","predicate":"messageUserVoteInputOption","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":"244310238","predicate":"messageUserVoteMultiple","params":[{"name":"user_id","type":"int"},{"name":"options","type":"Vector"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":"136574537","predicate":"messages.votesList","params":[{"name":"flags","type":"#"},{"name":"count","type":"int"},{"name":"votes","type":"Vector"},{"name":"users","type":"Vector"},{"name":"next_offset","type":"flags.0?string"}],"type":"messages.VotesList"},{"id":"-1144565411","predicate":"keyboardButtonRequestPoll","params":[{"name":"flags","type":"#"},{"name":"quiz","type":"flags.0?Bool"},{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":"1981704948","predicate":"messageEntityBankCard","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":"-177732982","predicate":"bankCardOpenUrl","params":[{"name":"url","type":"string"},{"name":"name","type":"string"}],"type":"BankCardOpenUrl"},{"id":"1042605427","predicate":"payments.bankCardData","params":[{"name":"title","type":"string"},{"name":"open_urls","type":"Vector"}],"type":"payments.BankCardData"},{"id":"-118740917","predicate":"peerSelfLocated","params":[{"name":"expires","type":"int"}],"type":"PeerLocated"},{"id":"1949890536","predicate":"dialogFilter","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"non_contacts","type":"flags.1?true"},{"name":"groups","type":"flags.2?true"},{"name":"broadcasts","type":"flags.3?true"},{"name":"bots","type":"flags.4?true"},{"name":"exclude_muted","type":"flags.11?true"},{"name":"exclude_read","type":"flags.12?true"},{"name":"exclude_archived","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"emoticon","type":"flags.25?string"},{"name":"pinned_peers","type":"Vector"},{"name":"include_peers","type":"Vector"},{"name":"exclude_peers","type":"Vector"}],"type":"DialogFilter"},{"id":"2004110666","predicate":"dialogFilterSuggested","params":[{"name":"filter","type":"DialogFilter"},{"name":"description","type":"string"}],"type":"DialogFilterSuggested"},{"id":"654302845","predicate":"updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Update"},{"id":"-1512627963","predicate":"updateDialogFilterOrder","params":[{"name":"order","type":"Vector"}],"type":"Update"},{"id":"889491791","predicate":"updateDialogFilters","params":[],"type":"Update"},{"id":"-1237848657","predicate":"statsDateRangeDays","params":[{"name":"min_date","type":"int"},{"name":"max_date","type":"int"}],"type":"StatsDateRangeDays"},{"id":"-884757282","predicate":"statsAbsValueAndPrev","params":[{"name":"current","type":"double"},{"name":"previous","type":"double"}],"type":"StatsAbsValueAndPrev"},{"id":"-875679776","predicate":"statsPercentValue","params":[{"name":"part","type":"double"},{"name":"total","type":"double"}],"type":"StatsPercentValue"},{"id":"1244130093","predicate":"statsGraphAsync","params":[{"name":"token","type":"string"}],"type":"StatsGraph"},{"id":"-1092839390","predicate":"statsGraphError","params":[{"name":"error","type":"string"}],"type":"StatsGraph"},{"id":"-1901828938","predicate":"statsGraph","params":[{"name":"flags","type":"#"},{"name":"json","type":"DataJSON"},{"name":"zoom_token","type":"flags.0?string"}],"type":"StatsGraph"},{"id":"-1387279939","predicate":"messageInteractionCounters","params":[{"name":"msg_id","type":"int"},{"name":"views","type":"int"},{"name":"forwards","type":"int"}],"type":"MessageInteractionCounters"},{"id":"-1107852396","predicate":"stats.broadcastStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"followers","type":"StatsAbsValueAndPrev"},{"name":"views_per_post","type":"StatsAbsValueAndPrev"},{"name":"shares_per_post","type":"StatsAbsValueAndPrev"},{"name":"enabled_notifications","type":"StatsPercentValue"},{"name":"growth_graph","type":"StatsGraph"},{"name":"followers_graph","type":"StatsGraph"},{"name":"mute_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"interactions_graph","type":"StatsGraph"},{"name":"iv_interactions_graph","type":"StatsGraph"},{"name":"views_by_source_graph","type":"StatsGraph"},{"name":"new_followers_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"recent_message_interactions","type":"Vector"}],"type":"stats.BroadcastStats"},{"id":"-428884101","predicate":"inputMediaDice","params":[{"name":"emoticon","type":"string"}],"type":"InputMedia"},{"id":"1065280907","predicate":"messageMediaDice","params":[{"name":"value","type":"int"},{"name":"emoticon","type":"string"}],"type":"MessageMedia"},{"id":"-427863538","predicate":"inputStickerSetDice","params":[{"name":"emoticon","type":"string"}],"type":"InputStickerSet"},{"id":"-1728664459","predicate":"help.promoDataEmpty","params":[{"name":"expires","type":"int"}],"type":"help.PromoData"},{"id":"-1942390465","predicate":"help.promoData","params":[{"name":"flags","type":"#"},{"name":"proxy","type":"flags.0?true"},{"name":"expires","type":"int"},{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"psa_type","type":"flags.1?string"},{"name":"psa_message","type":"flags.2?string"}],"type":"help.PromoData"},{"id":"-567037804","predicate":"videoSize","params":[{"name":"flags","type":"#"},{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"},{"name":"video_start_ts","type":"flags.0?double"}],"type":"VideoSize"},{"id":"643940105","predicate":"updatePhoneCallSignalingData","params":[{"name":"phone_call_id","type":"long"},{"name":"data","type":"bytes"}],"type":"Update"},{"id":"1634294960","predicate":"chatInvitePeek","params":[{"name":"chat","type":"Chat"},{"name":"expires","type":"int"}],"type":"ChatInvite"},{"id":"418631927","predicate":"statsGroupTopPoster","params":[{"name":"user_id","type":"int"},{"name":"messages","type":"int"},{"name":"avg_chars","type":"int"}],"type":"StatsGroupTopPoster"},{"id":"1611985938","predicate":"statsGroupTopAdmin","params":[{"name":"user_id","type":"int"},{"name":"deleted","type":"int"},{"name":"kicked","type":"int"},{"name":"banned","type":"int"}],"type":"StatsGroupTopAdmin"},{"id":"831924812","predicate":"statsGroupTopInviter","params":[{"name":"user_id","type":"int"},{"name":"invitations","type":"int"}],"type":"StatsGroupTopInviter"},{"id":"-276825834","predicate":"stats.megagroupStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"members","type":"StatsAbsValueAndPrev"},{"name":"messages","type":"StatsAbsValueAndPrev"},{"name":"viewers","type":"StatsAbsValueAndPrev"},{"name":"posters","type":"StatsAbsValueAndPrev"},{"name":"growth_graph","type":"StatsGraph"},{"name":"members_graph","type":"StatsGraph"},{"name":"new_members_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"messages_graph","type":"StatsGraph"},{"name":"actions_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"weekdays_graph","type":"StatsGraph"},{"name":"top_posters","type":"Vector"},{"name":"top_admins","type":"Vector"},{"name":"top_inviters","type":"Vector"},{"name":"users","type":"Vector"}],"type":"stats.MegagroupStats"},{"id":"-1096616924","predicate":"globalPrivacySettings","params":[{"name":"flags","type":"#"},{"name":"archive_and_mute_new_noncontact_peers","type":"flags.0?Bool"}],"type":"GlobalPrivacySettings"},{"id":"1667228533","predicate":"phoneConnectionWebrtc","params":[{"name":"flags","type":"#"},{"name":"turn","type":"flags.0?true"},{"name":"stun","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"username","type":"string"},{"name":"password","type":"string"}],"type":"PhoneConnection"},{"id":"1107543535","predicate":"help.countryCode","params":[{"name":"flags","type":"#"},{"name":"country_code","type":"string"},{"name":"prefixes","type":"flags.0?Vector"},{"name":"patterns","type":"flags.1?Vector"}],"type":"help.CountryCode"},{"id":"-1014526429","predicate":"help.country","params":[{"name":"flags","type":"#"},{"name":"hidden","type":"flags.0?true"},{"name":"iso2","type":"string"},{"name":"default_name","type":"string"},{"name":"name","type":"flags.1?string"},{"name":"country_codes","type":"Vector"}],"type":"help.Country"},{"id":"-1815339214","predicate":"help.countriesListNotModified","params":[],"type":"help.CountriesList"},{"id":"-2016381538","predicate":"help.countriesList","params":[{"name":"countries","type":"Vector"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":"1163625789","predicate":"messageViews","params":[{"name":"flags","type":"#"},{"name":"views","type":"flags.0?int"},{"name":"forwards","type":"flags.1?int"},{"name":"replies","type":"flags.2?MessageReplies"}],"type":"MessageViews"},{"id":"1854571743","predicate":"updateChannelMessageForwards","params":[{"name":"channel_id","type":"int"},{"name":"id","type":"int"},{"name":"forwards","type":"int"}],"type":"Update"},{"id":"-96535659","predicate":"photoSizeProgressive","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"sizes","type":"Vector"}],"type":"PhotoSize"},{"id":"-1228606141","predicate":"messages.messageViews","params":[{"name":"views","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.MessageViews"},{"id":"482860628","predicate":"updateReadChannelDiscussionInbox","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"},{"name":"broadcast_id","type":"flags.0?int"},{"name":"broadcast_post","type":"flags.0?int"}],"type":"Update"},{"id":"1178116716","predicate":"updateReadChannelDiscussionOutbox","params":[{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Update"},{"id":"-170029155","predicate":"messages.discussionMessage","params":[{"name":"flags","type":"#"},{"name":"messages","type":"Vector"},{"name":"max_id","type":"flags.0?int"},{"name":"read_inbox_max_id","type":"flags.1?int"},{"name":"read_outbox_max_id","type":"flags.2?int"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.DiscussionMessage"},{"id":"-1495959709","predicate":"messageReplyHeader","params":[{"name":"flags","type":"#"},{"name":"reply_to_msg_id","type":"int"},{"name":"reply_to_peer_id","type":"flags.0?Peer"},{"name":"reply_to_top_id","type":"flags.1?int"}],"type":"MessageReplyHeader"},{"id":"1093204652","predicate":"messageReplies","params":[{"name":"flags","type":"#"},{"name":"comments","type":"flags.0?true"},{"name":"replies","type":"int"},{"name":"replies_pts","type":"int"},{"name":"recent_repliers","type":"flags.1?Vector"},{"name":"channel_id","type":"flags.0?int"},{"name":"max_id","type":"flags.2?int"},{"name":"read_max_id","type":"flags.3?int"}],"type":"MessageReplies"},{"id":"610945826","predicate":"updatePeerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"blocked","type":"Bool"}],"type":"Update"},{"id":"-386039788","predicate":"peerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"date","type":"int"}],"type":"PeerBlocked"},{"id":"1796675352","predicate":"updateChannelUserTyping","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":"-1392895362","predicate":"inputMessageCallbackQuery","params":[{"name":"id","type":"int"},{"name":"query_id","type":"long"}],"type":"InputMessage"},{"id":"453242886","predicate":"channelParticipantLeft","params":[{"name":"peer","type":"Peer"}],"type":"ChannelParticipant"},{"id":"-531931925","predicate":"channelParticipantsMentions","params":[{"name":"flags","type":"#"},{"name":"q","type":"flags.0?string"},{"name":"top_msg_id","type":"flags.1?int"}],"type":"ChannelParticipantsFilter"},{"id":"-309990731","predicate":"updatePinnedMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"-2054649973","predicate":"updatePinnedChannelMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":"464520273","predicate":"inputMessagesFilterPinned","params":[],"type":"MessagesFilter"},{"id":"-1986399595","predicate":"stats.messageStats","params":[{"name":"views_graph","type":"StatsGraph"}],"type":"stats.MessageStats"},{"id":"-1730095465","predicate":"messageActionGeoProximityReached","params":[{"name":"from_id","type":"Peer"},{"name":"to_id","type":"Peer"},{"name":"distance","type":"int"}],"type":"MessageAction"},{"id":"-668906175","predicate":"photoPathSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":"-651419003","predicate":"speakingInGroupCallAction","params":[],"type":"SendMessageAction"},{"id":"2004925620","predicate":"groupCallDiscarded","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"duration","type":"int"}],"type":"GroupCall"},{"id":"-711498484","predicate":"groupCall","params":[{"name":"flags","type":"#"},{"name":"join_muted","type":"flags.1?true"},{"name":"can_change_join_muted","type":"flags.2?true"},{"name":"join_date_asc","type":"flags.6?true"},{"name":"schedule_start_subscribed","type":"flags.8?true"},{"name":"can_start_video","type":"flags.9?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"participants_count","type":"int"},{"name":"title","type":"flags.3?string"},{"name":"stream_dc_id","type":"flags.4?int"},{"name":"record_start_date","type":"flags.5?int"},{"name":"schedule_date","type":"flags.7?int"},{"name":"unmuted_video_count","type":"flags.10?int"},{"name":"unmuted_video_limit","type":"int"},{"name":"version","type":"int"}],"type":"GroupCall"},{"id":"-659913713","predicate":"inputGroupCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGroupCall"},{"id":"2047704898","predicate":"messageActionGroupCall","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"duration","type":"flags.0?int"}],"type":"MessageAction"},{"id":"1991897370","predicate":"messageActionInviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":"-341428482","predicate":"groupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"left","type":"flags.1?true"},{"name":"can_self_unmute","type":"flags.2?true"},{"name":"just_joined","type":"flags.4?true"},{"name":"versioned","type":"flags.5?true"},{"name":"min","type":"flags.8?true"},{"name":"muted_by_you","type":"flags.9?true"},{"name":"volume_by_admin","type":"flags.10?true"},{"name":"self","type":"flags.12?true"},{"name":"video_joined","type":"flags.15?true"},{"name":"peer","type":"Peer"},{"name":"date","type":"int"},{"name":"active_date","type":"flags.3?int"},{"name":"source","type":"int"},{"name":"volume","type":"flags.7?int"},{"name":"about","type":"flags.11?string"},{"name":"raise_hand_rating","type":"flags.13?long"},{"name":"video","type":"flags.6?GroupCallParticipantVideo"},{"name":"presentation","type":"flags.14?GroupCallParticipantVideo"}],"type":"GroupCallParticipant"},{"id":"321954198","predicate":"updateChat","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":"-219423922","predicate":"updateGroupCallParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"Update"},{"id":"-1537295973","predicate":"updateGroupCall","params":[{"name":"chat_id","type":"int"},{"name":"call","type":"GroupCall"}],"type":"Update"},{"id":"-1636664659","predicate":"phone.groupCall","params":[{"name":"call","type":"GroupCall"},{"name":"participants","type":"Vector"},{"name":"participants_next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.GroupCall"},{"id":"-193506890","predicate":"phone.groupParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"version","type":"int"}],"type":"phone.GroupParticipants"},{"id":"813821341","predicate":"inlineQueryPeerTypeSameBotPM","params":[],"type":"InlineQueryPeerType"},{"id":"-2093215828","predicate":"inlineQueryPeerTypePM","params":[],"type":"InlineQueryPeerType"},{"id":"-681130742","predicate":"inlineQueryPeerTypeChat","params":[],"type":"InlineQueryPeerType"},{"id":"1589952067","predicate":"inlineQueryPeerTypeMegagroup","params":[],"type":"InlineQueryPeerType"},{"id":"1664413338","predicate":"inlineQueryPeerTypeBroadcast","params":[],"type":"InlineQueryPeerType"},{"id":"589338437","predicate":"channelAdminLogEventActionStartGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":"-610299584","predicate":"channelAdminLogEventActionDiscardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":"-115071790","predicate":"channelAdminLogEventActionParticipantMute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":"-431740480","predicate":"channelAdminLogEventActionParticipantUnmute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":"1456906823","predicate":"channelAdminLogEventActionToggleGroupCallSetting","params":[{"name":"join_muted","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":"-1966921727","predicate":"inputPaymentCredentialsGooglePay","params":[{"name":"payment_token","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":"375566091","predicate":"messages.historyImport","params":[{"name":"id","type":"long"}],"type":"messages.HistoryImport"},{"id":"-606432698","predicate":"sendMessageHistoryImportAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":"1578088377","predicate":"messages.historyImportParsed","params":[{"name":"flags","type":"#"},{"name":"pm","type":"flags.0?true"},{"name":"group","type":"flags.1?true"},{"name":"title","type":"flags.2?string"}],"type":"messages.HistoryImportParsed"},{"id":"-170010905","predicate":"inputReportReasonFake","params":[],"type":"ReportReason"},{"id":"-275956116","predicate":"messages.affectedFoundMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"},{"name":"messages","type":"Vector"}],"type":"messages.AffectedFoundMessages"},{"id":"-1441072131","predicate":"messageActionSetMessagesTTL","params":[{"name":"period","type":"int"}],"type":"MessageAction"},{"id":"-1147422299","predicate":"updatePeerHistoryTTL","params":[{"name":"flags","type":"#"},{"name":"peer","type":"Peer"},{"name":"ttl_period","type":"flags.0?int"}],"type":"Update"},{"id":"-206342113","predicate":"updateChatParticipant","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"actor_id","type":"int"},{"name":"user_id","type":"int"},{"name":"prev_participant","type":"flags.0?ChatParticipant"},{"name":"new_participant","type":"flags.1?ChatParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":"2146218476","predicate":"updateChannelParticipant","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"date","type":"int"},{"name":"actor_id","type":"int"},{"name":"user_id","type":"int"},{"name":"prev_participant","type":"flags.0?ChannelParticipant"},{"name":"new_participant","type":"flags.1?ChannelParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":"133777546","predicate":"updateBotStopped","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"},{"name":"stopped","type":"Bool"},{"name":"qts","type":"int"}],"type":"Update"},{"id":"507405952","predicate":"chatInviteImporter","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatInviteImporter"},{"id":"-1111085620","predicate":"messages.exportedChatInvites","params":[{"name":"count","type":"int"},{"name":"invites","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvites"},{"id":"410107472","predicate":"messages.exportedChatInvite","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":"572915951","predicate":"messages.exportedChatInviteReplaced","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":"-2118733814","predicate":"messages.chatInviteImporters","params":[{"name":"count","type":"int"},{"name":"importers","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatInviteImporters"},{"id":"-539872497","predicate":"chatAdminWithInvites","params":[{"name":"admin_id","type":"int"},{"name":"invites_count","type":"int"},{"name":"revoked_invites_count","type":"int"}],"type":"ChatAdminWithInvites"},{"id":"-1231326505","predicate":"messages.chatAdminsWithInvites","params":[{"name":"admins","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatAdminsWithInvites"},{"id":"1557846647","predicate":"channelAdminLogEventActionParticipantJoinByInvite","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":"1515256996","predicate":"channelAdminLogEventActionExportedInviteDelete","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":"1091179342","predicate":"channelAdminLogEventActionExportedInviteRevoke","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":"-384910503","predicate":"channelAdminLogEventActionExportedInviteEdit","params":[{"name":"prev_invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":"1048537159","predicate":"channelAdminLogEventActionParticipantVolume","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":"1855199800","predicate":"channelAdminLogEventActionChangeHistoryTTL","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":"-1571952873","predicate":"messages.checkedHistoryImportPeer","params":[{"name":"confirm_text","type":"string"}],"type":"messages.CheckedHistoryImportPeer"},{"id":"-1146808775","predicate":"inputGroupCallStream","params":[{"name":"call","type":"InputGroupCall"},{"name":"time_ms","type":"long"},{"name":"scale","type":"int"}],"type":"InputFileLocation"},{"id":"-1343921601","predicate":"phone.joinAsPeers","params":[{"name":"peers","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.JoinAsPeers"},{"id":"541839704","predicate":"phone.exportedGroupCallInvite","params":[{"name":"link","type":"string"}],"type":"phone.ExportedGroupCallInvite"},{"id":"-672693723","predicate":"inputBotInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":"894081801","predicate":"botInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":"-1281329567","predicate":"messageActionGroupCallScheduled","params":[{"name":"call","type":"InputGroupCall"},{"name":"schedule_date","type":"int"}],"type":"MessageAction"},{"id":"-592373577","predicate":"groupCallParticipantVideoSourceGroup","params":[{"name":"semantics","type":"string"},{"name":"sources","type":"Vector"}],"type":"GroupCallParticipantVideoSourceGroup"},{"id":"1735736008","predicate":"groupCallParticipantVideo","params":[{"name":"flags","type":"#"},{"name":"paused","type":"flags.0?true"},{"name":"endpoint","type":"string"},{"name":"source_groups","type":"Vector"},{"name":"audio_source","type":"flags.1?int"}],"type":"GroupCallParticipantVideo"},{"id":"192428418","predicate":"updateGroupCallConnection","params":[{"name":"flags","type":"#"},{"name":"presentation","type":"flags.0?true"},{"name":"params","type":"DataJSON"}],"type":"Update"},{"id":"-2046910401","predicate":"stickers.suggestedShortName","params":[{"name":"short_name","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":"795652779","predicate":"botCommandScopeDefault","params":[],"type":"BotCommandScope"},{"id":"1011811544","predicate":"botCommandScopeUsers","params":[],"type":"BotCommandScope"},{"id":"1877059713","predicate":"botCommandScopeChats","params":[],"type":"BotCommandScope"},{"id":"-1180016534","predicate":"botCommandScopeChatAdmins","params":[],"type":"BotCommandScope"},{"id":"-610432643","predicate":"botCommandScopePeer","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":"1071145937","predicate":"botCommandScopePeerAdmins","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":"169026035","predicate":"botCommandScopePeerUser","params":[{"name":"peer","type":"InputPeer"},{"name":"user_id","type":"InputUser"}],"type":"BotCommandScope"},{"id":"-478701471","predicate":"account.resetPasswordFailedWait","params":[{"name":"retry_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":"-370148227","predicate":"account.resetPasswordRequestedWait","params":[{"name":"until_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":"-383330754","predicate":"account.resetPasswordOk","params":[],"type":"account.ResetPasswordResult"},{"id":"-813823885","predicate":"updateBotCommands","params":[{"name":"peer","type":"Peer"},{"name":"bot_id","type":"int"},{"name":"commands","type":"Vector"}],"type":"Update"}],"methods":[{"id":"-878758099","method":"invokeAfterMsg","params":[{"name":"msg_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":"1036301552","method":"invokeAfterMsgs","params":[{"name":"msg_ids","type":"Vector"},{"name":"query","type":"!X"}],"type":"X"},{"id":"-1502141361","method":"auth.sendCode","params":[{"name":"phone_number","type":"string"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":"-2131827673","method":"auth.signUp","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"auth.Authorization"},{"id":"-1126886015","method":"auth.signIn","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"auth.Authorization"},{"id":"1461180992","method":"auth.logOut","params":[],"type":"Bool"},{"id":"-1616179942","method":"auth.resetAuthorizations","params":[],"type":"Bool"},{"id":"-440401971","method":"auth.exportAuthorization","params":[{"name":"dc_id","type":"int"}],"type":"auth.ExportedAuthorization"},{"id":"-470837741","method":"auth.importAuthorization","params":[{"name":"id","type":"int"},{"name":"bytes","type":"bytes"}],"type":"auth.Authorization"},{"id":"-841733627","method":"auth.bindTempAuthKey","params":[{"name":"perm_auth_key_id","type":"long"},{"name":"nonce","type":"long"},{"name":"expires_at","type":"int"},{"name":"encrypted_message","type":"bytes"}],"type":"Bool"},{"id":"1754754159","method":"account.registerDevice","params":[{"name":"flags","type":"#"},{"name":"no_muted","type":"flags.0?true"},{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"app_sandbox","type":"Bool"},{"name":"secret","type":"bytes"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":"813089983","method":"account.unregisterDevice","params":[{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":"-2067899501","method":"account.updateNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"},{"name":"settings","type":"InputPeerNotifySettings"}],"type":"Bool"},{"id":"313765169","method":"account.getNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"}],"type":"PeerNotifySettings"},{"id":"-612493497","method":"account.resetNotifySettings","params":[],"type":"Bool"},{"id":"2018596725","method":"account.updateProfile","params":[{"name":"flags","type":"#"},{"name":"first_name","type":"flags.0?string"},{"name":"last_name","type":"flags.1?string"},{"name":"about","type":"flags.2?string"}],"type":"User"},{"id":"1713919532","method":"account.updateStatus","params":[{"name":"offline","type":"Bool"}],"type":"Bool"},{"id":"-1430579357","method":"account.getWallPapers","params":[{"name":"hash","type":"int"}],"type":"account.WallPapers"},{"id":"-977650298","method":"account.reportPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":"227648840","method":"users.getUsers","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":"-902781519","method":"users.getFullUser","params":[{"name":"id","type":"InputUser"}],"type":"UserFull"},{"id":"749357634","method":"contacts.getContactIDs","params":[{"name":"hash","type":"int"}],"type":"Vector"},{"id":"-995929106","method":"contacts.getStatuses","params":[],"type":"Vector"},{"id":"-1071414113","method":"contacts.getContacts","params":[{"name":"hash","type":"int"}],"type":"contacts.Contacts"},{"id":"746589157","method":"contacts.importContacts","params":[{"name":"contacts","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":"157945344","method":"contacts.deleteContacts","params":[{"name":"id","type":"Vector"}],"type":"Updates"},{"id":"269745566","method":"contacts.deleteByPhones","params":[{"name":"phones","type":"Vector"}],"type":"Bool"},{"id":"1758204945","method":"contacts.block","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":"-1096393392","method":"contacts.unblock","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":"-176409329","method":"contacts.getBlocked","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"contacts.Blocked"},{"id":"1673946374","method":"messages.getMessages","params":[{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":"-1594999949","method":"messages.getDialogs","params":[{"name":"flags","type":"#"},{"name":"exclude_pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"offset_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Dialogs"},{"id":"-591691168","method":"messages.getHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":"204812012","method":"messages.search","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"q","type":"string"},{"name":"from_id","type":"flags.0?InputPeer"},{"name":"top_msg_id","type":"flags.1?int"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":"238054714","method":"messages.readHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedMessages"},{"id":"469850889","method":"messages.deleteHistory","params":[{"name":"flags","type":"#"},{"name":"just_clear","type":"flags.0?true"},{"name":"revoke","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedHistory"},{"id":"-443640366","method":"messages.deleteMessages","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":"94983360","method":"messages.receivedMessages","params":[{"name":"max_id","type":"int"}],"type":"Vector"},{"id":"1486110434","method":"messages.setTyping","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"action","type":"SendMessageAction"}],"type":"Bool"},{"id":"1376532592","method":"messages.sendMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":"881978281","method":"messages.sendMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"media","type":"InputMedia"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":"-637606386","method":"messages.forwardMessages","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"with_my_score","type":"flags.8?true"},{"name":"from_peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"random_id","type":"Vector"},{"name":"to_peer","type":"InputPeer"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":"-820669733","method":"messages.reportSpam","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":"913498268","method":"messages.getPeerSettings","params":[{"name":"peer","type":"InputPeer"}],"type":"PeerSettings"},{"id":"-1991005362","method":"messages.report","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":"1013621127","method":"messages.getChats","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":"998448230","method":"messages.getFullChat","params":[{"name":"chat_id","type":"int"}],"type":"messages.ChatFull"},{"id":"-599447467","method":"messages.editChatTitle","params":[{"name":"chat_id","type":"int"},{"name":"title","type":"string"}],"type":"Updates"},{"id":"-900957736","method":"messages.editChatPhoto","params":[{"name":"chat_id","type":"int"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":"-106911223","method":"messages.addChatUser","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"fwd_limit","type":"int"}],"type":"Updates"},{"id":"-986430054","method":"messages.deleteChatUser","params":[{"name":"flags","type":"#"},{"name":"revoke_history","type":"flags.0?true"},{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"Updates"},{"id":"164303470","method":"messages.createChat","params":[{"name":"users","type":"Vector"},{"name":"title","type":"string"}],"type":"Updates"},{"id":"-304838614","method":"updates.getState","params":[],"type":"updates.State"},{"id":"630429265","method":"updates.getDifference","params":[{"name":"flags","type":"#"},{"name":"pts","type":"int"},{"name":"pts_total_limit","type":"flags.0?int"},{"name":"date","type":"int"},{"name":"qts","type":"int"}],"type":"updates.Difference"},{"id":"1926525996","method":"photos.updateProfilePhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"photos.Photo"},{"id":"-1980559511","method":"photos.uploadProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"photos.Photo"},{"id":"-2016444625","method":"photos.deletePhotos","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":"-1291540959","method":"upload.saveFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":"-1319462148","method":"upload.getFile","params":[{"name":"flags","type":"#"},{"name":"precise","type":"flags.0?true"},{"name":"cdn_supported","type":"flags.1?true"},{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.File"},{"id":"-990308245","method":"help.getConfig","params":[],"type":"Config"},{"id":"531836966","method":"help.getNearestDc","params":[],"type":"NearestDc"},{"id":"1378703997","method":"help.getAppUpdate","params":[{"name":"source","type":"string"}],"type":"help.AppUpdate"},{"id":"1295590211","method":"help.getInviteText","params":[],"type":"help.InviteText"},{"id":"-1848823128","method":"photos.getUserPhotos","params":[{"name":"user_id","type":"InputUser"},{"name":"offset","type":"int"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"photos.Photos"},{"id":"651135312","method":"messages.getDhConfig","params":[{"name":"version","type":"int"},{"name":"random_length","type":"int"}],"type":"messages.DhConfig"},{"id":"-162681021","method":"messages.requestEncryption","params":[{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":"1035731989","method":"messages.acceptEncryption","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"g_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":"-208425312","method":"messages.discardEncryption","params":[{"name":"flags","type":"#"},{"name":"delete_history","type":"flags.0?true"},{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":"2031374829","method":"messages.setEncryptedTyping","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"typing","type":"Bool"}],"type":"Bool"},{"id":"2135648522","method":"messages.readEncryptedHistory","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"max_date","type":"int"}],"type":"Bool"},{"id":"1157265941","method":"messages.sendEncrypted","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":"1431914525","method":"messages.sendEncryptedFile","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"},{"name":"file","type":"InputEncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":"852769188","method":"messages.sendEncryptedService","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":"1436924774","method":"messages.receivedQueue","params":[{"name":"max_qts","type":"int"}],"type":"Vector"},{"id":"1259113487","method":"messages.reportEncryptedSpam","params":[{"name":"peer","type":"InputEncryptedChat"}],"type":"Bool"},{"id":"-562337987","method":"upload.saveBigFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"file_total_parts","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":"-1043505495","method":"initConnection","params":[{"name":"flags","type":"#"},{"name":"api_id","type":"int"},{"name":"device_model","type":"string"},{"name":"system_version","type":"string"},{"name":"app_version","type":"string"},{"name":"system_lang_code","type":"string"},{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"proxy","type":"flags.0?InputClientProxy"},{"name":"params","type":"flags.1?JSONValue"},{"name":"query","type":"!X"}],"type":"X"},{"id":"-1663104819","method":"help.getSupport","params":[],"type":"help.Support"},{"id":"916930423","method":"messages.readMessageContents","params":[{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":"655677548","method":"account.checkUsername","params":[{"name":"username","type":"string"}],"type":"Bool"},{"id":"1040964988","method":"account.updateUsername","params":[{"name":"username","type":"string"}],"type":"User"},{"id":"301470424","method":"contacts.search","params":[{"name":"q","type":"string"},{"name":"limit","type":"int"}],"type":"contacts.Found"},{"id":"-623130288","method":"account.getPrivacy","params":[{"name":"key","type":"InputPrivacyKey"}],"type":"account.PrivacyRules"},{"id":"-906486552","method":"account.setPrivacy","params":[{"name":"key","type":"InputPrivacyKey"},{"name":"rules","type":"Vector"}],"type":"account.PrivacyRules"},{"id":"1099779595","method":"account.deleteAccount","params":[{"name":"reason","type":"string"}],"type":"Bool"},{"id":"150761757","method":"account.getAccountTTL","params":[],"type":"AccountDaysTTL"},{"id":"608323678","method":"account.setAccountTTL","params":[{"name":"ttl","type":"AccountDaysTTL"}],"type":"Bool"},{"id":"-627372787","method":"invokeWithLayer","params":[{"name":"layer","type":"int"},{"name":"query","type":"!X"}],"type":"X"},{"id":"-113456221","method":"contacts.resolveUsername","params":[{"name":"username","type":"string"}],"type":"contacts.ResolvedPeer"},{"id":"-2108208411","method":"account.sendChangePhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":"1891839707","method":"account.changePhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"User"},{"id":"71126828","method":"messages.getStickers","params":[{"name":"emoticon","type":"string"},{"name":"hash","type":"int"}],"type":"messages.Stickers"},{"id":"479598769","method":"messages.getAllStickers","params":[{"name":"hash","type":"int"}],"type":"messages.AllStickers"},{"id":"954152242","method":"account.updateDeviceLocked","params":[{"name":"period","type":"int"}],"type":"Bool"},{"id":"1738800940","method":"auth.importBotAuthorization","params":[{"name":"flags","type":"int"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"bot_auth_token","type":"string"}],"type":"auth.Authorization"},{"id":"-1956073268","method":"messages.getWebPagePreview","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"MessageMedia"},{"id":"-484392616","method":"account.getAuthorizations","params":[],"type":"account.Authorizations"},{"id":"-545786948","method":"account.resetAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":"1418342645","method":"account.getPassword","params":[],"type":"account.Password"},{"id":"-1663767815","method":"account.getPasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"account.PasswordSettings"},{"id":"-1516564433","method":"account.updatePasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"new_settings","type":"account.PasswordInputSettings"}],"type":"Bool"},{"id":"-779399914","method":"auth.checkPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"auth.Authorization"},{"id":"-661144474","method":"auth.requestPasswordRecovery","params":[],"type":"auth.PasswordRecovery"},{"id":"923364464","method":"auth.recoverPassword","params":[{"name":"flags","type":"#"},{"name":"code","type":"string"},{"name":"new_settings","type":"flags.0?account.PasswordInputSettings"}],"type":"auth.Authorization"},{"id":"-1080796745","method":"invokeWithoutUpdates","params":[{"name":"query","type":"!X"}],"type":"X"},{"id":"347716823","method":"messages.exportChatInvite","params":[{"name":"flags","type":"#"},{"name":"legacy_revoke_permanent","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"ExportedChatInvite"},{"id":"1051570619","method":"messages.checkChatInvite","params":[{"name":"hash","type":"string"}],"type":"ChatInvite"},{"id":"1817183516","method":"messages.importChatInvite","params":[{"name":"hash","type":"string"}],"type":"Updates"},{"id":"639215886","method":"messages.getStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"messages.StickerSet"},{"id":"-946871200","method":"messages.installStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"archived","type":"Bool"}],"type":"messages.StickerSetInstallResult"},{"id":"-110209570","method":"messages.uninstallStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":"-421563528","method":"messages.startBot","params":[{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"long"},{"name":"start_param","type":"string"}],"type":"Updates"},{"id":"-1877938321","method":"help.getAppChangelog","params":[{"name":"prev_app_version","type":"string"}],"type":"Updates"},{"id":"1468322785","method":"messages.getMessagesViews","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"increment","type":"Bool"}],"type":"messages.MessageViews"},{"id":"-871347913","method":"channels.readHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":"-2067661490","method":"channels.deleteMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":"-787622117","method":"channels.deleteUserHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"}],"type":"messages.AffectedHistory"},{"id":"-32999408","method":"channels.reportSpam","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":"-1383294429","method":"channels.getMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":"306054633","method":"channels.getParticipants","params":[{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelParticipantsFilter"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"channels.ChannelParticipants"},{"id":"-1599378234","method":"channels.getParticipant","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"}],"type":"channels.ChannelParticipant"},{"id":"176122811","method":"channels.getChannels","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":"141781513","method":"channels.getFullChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.ChatFull"},{"id":"1029681423","method":"channels.createChannel","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.0?true"},{"name":"megagroup","type":"flags.1?true"},{"name":"for_import","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"about","type":"string"},{"name":"geo_point","type":"flags.2?InputGeoPoint"},{"name":"address","type":"flags.2?string"}],"type":"Updates"},{"id":"-751007486","method":"channels.editAdmin","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"string"}],"type":"Updates"},{"id":"1450044624","method":"channels.editTitle","params":[{"name":"channel","type":"InputChannel"},{"name":"title","type":"string"}],"type":"Updates"},{"id":"-248621111","method":"channels.editPhoto","params":[{"name":"channel","type":"InputChannel"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":"283557164","method":"channels.checkUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":"890549214","method":"channels.updateUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":"615851205","method":"channels.joinChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":"-130635115","method":"channels.leaveChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":"429865580","method":"channels.inviteToChannel","params":[{"name":"channel","type":"InputChannel"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":"-1072619549","method":"channels.deleteChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":"51854712","method":"updates.getChannelDifference","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelMessagesFilter"},{"name":"pts","type":"int"},{"name":"limit","type":"int"}],"type":"updates.ChannelDifference"},{"id":"-1444503762","method":"messages.editChatAdmin","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"is_admin","type":"Bool"}],"type":"Bool"},{"id":"363051235","method":"messages.migrateChat","params":[{"name":"chat_id","type":"int"}],"type":"Updates"},{"id":"1271290010","method":"messages.searchGlobal","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"q","type":"string"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":"2016638777","method":"messages.reorderStickerSets","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":"864953444","method":"messages.getDocumentByHash","params":[{"name":"sha256","type":"bytes"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":"-2084618926","method":"messages.getSavedGifs","params":[{"name":"hash","type":"int"}],"type":"messages.SavedGifs"},{"id":"846868683","method":"messages.saveGif","params":[{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":"1364105629","method":"messages.getInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"geo_point","type":"flags.0?InputGeoPoint"},{"name":"query","type":"string"},{"name":"offset","type":"string"}],"type":"messages.BotResults"},{"id":"-346119674","method":"messages.setInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"private","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"next_offset","type":"flags.2?string"},{"name":"switch_pm","type":"flags.3?InlineBotSwitchPM"}],"type":"Bool"},{"id":"570955184","method":"messages.sendInlineBotResult","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"hide_via","type":"flags.11?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"random_id","type":"long"},{"name":"query_id","type":"long"},{"name":"id","type":"string"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":"-432034325","method":"channels.exportMessageLink","params":[{"name":"flags","type":"#"},{"name":"grouped","type":"flags.0?true"},{"name":"thread","type":"flags.1?true"},{"name":"channel","type":"InputChannel"},{"name":"id","type":"int"}],"type":"ExportedMessageLink"},{"id":"527021574","method":"channels.toggleSignatures","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":"1056025023","method":"auth.resendCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"auth.SentCode"},{"id":"520357240","method":"auth.cancelCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"Bool"},{"id":"-39416522","method":"messages.getMessageEditData","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"messages.MessageEditData"},{"id":"1224152952","method":"messages.editMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.15?int"}],"type":"Updates"},{"id":"-2091549254","method":"messages.editInlineBotMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":"-1824339449","method":"messages.getBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"game","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"data","type":"flags.0?bytes"},{"name":"password","type":"flags.2?InputCheckPasswordSRP"}],"type":"messages.BotCallbackAnswer"},{"id":"-712043766","method":"messages.setBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"Bool"},{"id":"-728224331","method":"contacts.getTopPeers","params":[{"name":"flags","type":"#"},{"name":"correspondents","type":"flags.0?true"},{"name":"bots_pm","type":"flags.1?true"},{"name":"bots_inline","type":"flags.2?true"},{"name":"phone_calls","type":"flags.3?true"},{"name":"forward_users","type":"flags.4?true"},{"name":"forward_chats","type":"flags.5?true"},{"name":"groups","type":"flags.10?true"},{"name":"channels","type":"flags.15?true"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"contacts.TopPeers"},{"id":"451113900","method":"contacts.resetTopPeerRating","params":[{"name":"category","type":"TopPeerCategory"},{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":"-462373635","method":"messages.getPeerDialogs","params":[{"name":"peers","type":"Vector"}],"type":"messages.PeerDialogs"},{"id":"-1137057461","method":"messages.saveDraft","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"peer","type":"InputPeer"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":"1782549861","method":"messages.getAllDrafts","params":[],"type":"Updates"},{"id":"766298703","method":"messages.getFeaturedStickers","params":[{"name":"hash","type":"int"}],"type":"messages.FeaturedStickers"},{"id":"1527873830","method":"messages.readFeaturedStickers","params":[{"name":"id","type":"Vector"}],"type":"Bool"},{"id":"1587647177","method":"messages.getRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"hash","type":"int"}],"type":"messages.RecentStickers"},{"id":"958863608","method":"messages.saveRecentSticker","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":"-1986437075","method":"messages.clearRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"}],"type":"Bool"},{"id":"1475442322","method":"messages.getArchivedStickers","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"offset_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.ArchivedStickers"},{"id":"457157256","method":"account.sendConfirmPhoneCode","params":[{"name":"hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":"1596029123","method":"account.confirmPhone","params":[{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":"-122669393","method":"channels.getAdminedPublicChannels","params":[{"name":"flags","type":"#"},{"name":"by_location","type":"flags.0?true"},{"name":"check_limit","type":"flags.1?true"}],"type":"messages.Chats"},{"id":"1706608543","method":"messages.getMaskStickers","params":[{"name":"hash","type":"int"}],"type":"messages.AllStickers"},{"id":"-866424884","method":"messages.getAttachedStickers","params":[{"name":"media","type":"InputStickeredMedia"}],"type":"Vector"},{"id":"-1907842680","method":"auth.dropTempAuthKeys","params":[{"name":"except_auth_keys","type":"Vector"}],"type":"Bool"},{"id":"-1896289088","method":"messages.setGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Updates"},{"id":"363700068","method":"messages.setInlineGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Bool"},{"id":"-400399203","method":"messages.getGameHighScores","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":"258170395","method":"messages.getInlineGameHighScores","params":[{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":"218777796","method":"messages.getCommonChats","params":[{"name":"user_id","type":"InputUser"},{"name":"max_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Chats"},{"id":"-341307408","method":"messages.getAllChats","params":[{"name":"except_ids","type":"Vector"}],"type":"messages.Chats"},{"id":"-333262899","method":"help.setBotUpdatesStatus","params":[{"name":"pending_updates_count","type":"int"},{"name":"message","type":"string"}],"type":"Bool"},{"id":"852135825","method":"messages.getWebPage","params":[{"name":"url","type":"string"},{"name":"hash","type":"int"}],"type":"WebPage"},{"id":"-1489903017","method":"messages.toggleDialogPin","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":"991616823","method":"messages.reorderPinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"folder_id","type":"int"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":"-692498958","method":"messages.getPinnedDialogs","params":[{"name":"folder_id","type":"int"}],"type":"messages.PeerDialogs"},{"id":"-1440257555","method":"bots.sendCustomRequest","params":[{"name":"custom_method","type":"string"},{"name":"params","type":"DataJSON"}],"type":"DataJSON"},{"id":"-434028723","method":"bots.answerWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"}],"type":"Bool"},{"id":"619086221","method":"upload.getWebFile","params":[{"name":"location","type":"InputWebFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.WebFile"},{"id":"-1976353651","method":"payments.getPaymentForm","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"theme_params","type":"flags.0?DataJSON"}],"type":"payments.PaymentForm"},{"id":"611897804","method":"payments.getPaymentReceipt","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"payments.PaymentReceipt"},{"id":"-619695760","method":"payments.validateRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"info","type":"PaymentRequestedInfo"}],"type":"payments.ValidatedRequestedInfo"},{"id":"818134173","method":"payments.sendPaymentForm","params":[{"name":"flags","type":"#"},{"name":"form_id","type":"long"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"requested_info_id","type":"flags.0?string"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"credentials","type":"InputPaymentCredentials"},{"name":"tip_amount","type":"flags.2?long"}],"type":"payments.PaymentResult"},{"id":"1151208273","method":"account.getTmpPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"period","type":"int"}],"type":"account.TmpPassword"},{"id":"578650699","method":"payments.getSavedInfo","params":[],"type":"payments.SavedInfo"},{"id":"-667062079","method":"payments.clearSavedInfo","params":[{"name":"flags","type":"#"},{"name":"credentials","type":"flags.0?true"},{"name":"info","type":"flags.1?true"}],"type":"Bool"},{"id":"-436833542","method":"messages.setBotShippingResults","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"Bool"},{"id":"163765653","method":"messages.setBotPrecheckoutResults","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"}],"type":"Bool"},{"id":"-1876841625","method":"stickers.createStickerSet","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"animated","type":"flags.1?true"},{"name":"user_id","type":"InputUser"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumb","type":"flags.2?InputDocument"},{"name":"stickers","type":"Vector"},{"name":"software","type":"flags.3?string"}],"type":"messages.StickerSet"},{"id":"-143257775","method":"stickers.removeStickerFromSet","params":[{"name":"sticker","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":"-4795190","method":"stickers.changeStickerPosition","params":[{"name":"sticker","type":"InputDocument"},{"name":"position","type":"int"}],"type":"messages.StickerSet"},{"id":"-2041315650","method":"stickers.addStickerToSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"sticker","type":"InputStickerSetItem"}],"type":"messages.StickerSet"},{"id":"1369162417","method":"messages.uploadMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":"1430593449","method":"phone.getCallConfig","params":[],"type":"DataJSON"},{"id":"1124046573","method":"phone.requestCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":"1003664544","method":"phone.acceptCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":"788404002","method":"phone.confirmCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_a","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":"399855457","method":"phone.receivedCall","params":[{"name":"peer","type":"InputPhoneCall"}],"type":"Bool"},{"id":"-1295269440","method":"phone.discardCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"duration","type":"int"},{"name":"reason","type":"PhoneCallDiscardReason"},{"name":"connection_id","type":"long"}],"type":"Updates"},{"id":"1508562471","method":"phone.setCallRating","params":[{"name":"flags","type":"#"},{"name":"user_initiative","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"rating","type":"int"},{"name":"comment","type":"string"}],"type":"Updates"},{"id":"662363518","method":"phone.saveCallDebug","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"debug","type":"DataJSON"}],"type":"Bool"},{"id":"536919235","method":"upload.getCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.CdnFile"},{"id":"-1691921240","method":"upload.reuploadCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"request_token","type":"bytes"}],"type":"Vector"},{"id":"1375900482","method":"help.getCdnConfig","params":[],"type":"CdnConfig"},{"id":"-219008246","method":"langpack.getLangPack","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackDifference"},{"id":"-269862909","method":"langpack.getStrings","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"keys","type":"Vector"}],"type":"Vector"},{"id":"-845657435","method":"langpack.getDifference","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"LangPackDifference"},{"id":"1120311183","method":"langpack.getLanguages","params":[{"name":"lang_pack","type":"string"}],"type":"Vector"},{"id":"-1763259007","method":"channels.editBanned","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":"870184064","method":"channels.getAdminLog","params":[{"name":"flags","type":"#"},{"name":"channel","type":"InputChannel"},{"name":"q","type":"string"},{"name":"events_filter","type":"flags.0?ChannelAdminLogEventsFilter"},{"name":"admins","type":"flags.1?Vector"},{"name":"max_id","type":"long"},{"name":"min_id","type":"long"},{"name":"limit","type":"int"}],"type":"channels.AdminLogResults"},{"id":"1302676017","method":"upload.getCdnFileHashes","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":"-914493408","method":"messages.sendScreenshotNotification","params":[{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"int"},{"name":"random_id","type":"long"}],"type":"Updates"},{"id":"-359881479","method":"channels.setStickers","params":[{"name":"channel","type":"InputChannel"},{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":"567151374","method":"messages.getFavedStickers","params":[{"name":"hash","type":"int"}],"type":"messages.FavedStickers"},{"id":"-1174420133","method":"messages.faveSticker","params":[{"name":"id","type":"InputDocument"},{"name":"unfave","type":"Bool"}],"type":"Bool"},{"id":"-357180360","method":"channels.readMessageContents","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":"-2020263951","method":"contacts.resetSaved","params":[],"type":"Bool"},{"id":"1180140658","method":"messages.getUnreadMentions","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"}],"type":"messages.Messages"},{"id":"-1355375294","method":"channels.deleteHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":"1036054804","method":"help.getRecentMeUrls","params":[{"name":"referer","type":"string"}],"type":"help.RecentMeUrls"},{"id":"-356796084","method":"channels.togglePreHistoryHidden","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":"251759059","method":"messages.readMentions","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":"-1144759543","method":"messages.getRecentLocations","params":[{"name":"peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":"-872345397","method":"messages.sendMultiMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"multi_media","type":"Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":"1347929239","method":"messages.uploadEncryptedFile","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"file","type":"InputEncryptedFile"}],"type":"EncryptedFile"},{"id":"405695855","method":"account.getWebAuthorizations","params":[],"type":"account.WebAuthorizations"},{"id":"755087855","method":"account.resetWebAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":"1747789204","method":"account.resetWebAuthorizations","params":[],"type":"Bool"},{"id":"-1028140917","method":"messages.searchStickerSets","params":[{"name":"flags","type":"#"},{"name":"exclude_featured","type":"flags.0?true"},{"name":"q","type":"string"},{"name":"hash","type":"int"}],"type":"messages.FoundStickerSets"},{"id":"-956147407","method":"upload.getFileHashes","params":[{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":"749019089","method":"help.getTermsOfServiceUpdate","params":[],"type":"help.TermsOfServiceUpdate"},{"id":"-294455398","method":"help.acceptTermsOfService","params":[{"name":"id","type":"DataJSON"}],"type":"Bool"},{"id":"-1299661699","method":"account.getAllSecureValues","params":[],"type":"Vector"},{"id":"1936088002","method":"account.getSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Vector"},{"id":"-1986010339","method":"account.saveSecureValue","params":[{"name":"value","type":"InputSecureValue"},{"name":"secure_secret_id","type":"long"}],"type":"SecureValue"},{"id":"-1199522741","method":"account.deleteSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Bool"},{"id":"-1865902923","method":"users.setSecureValueErrors","params":[{"name":"id","type":"InputUser"},{"name":"errors","type":"Vector"}],"type":"Bool"},{"id":"-1200903967","method":"account.getAuthorizationForm","params":[{"name":"bot_id","type":"int"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"}],"type":"account.AuthorizationForm"},{"id":"-419267436","method":"account.acceptAuthorization","params":[{"name":"bot_id","type":"int"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"},{"name":"value_hashes","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"Bool"},{"id":"-1516022023","method":"account.sendVerifyPhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":"1305716726","method":"account.verifyPhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":"1880182943","method":"account.sendVerifyEmailCode","params":[{"name":"email","type":"string"}],"type":"account.SentEmailCode"},{"id":"-323339813","method":"account.verifyEmail","params":[{"name":"email","type":"string"},{"name":"code","type":"string"}],"type":"Bool"},{"id":"1072547679","method":"help.getDeepLinkInfo","params":[{"name":"path","type":"string"}],"type":"help.DeepLinkInfo"},{"id":"-2098076769","method":"contacts.getSaved","params":[],"type":"Vector"},{"id":"-2092831552","method":"channels.getLeftChannels","params":[{"name":"offset","type":"int"}],"type":"messages.Chats"},{"id":"-262453244","method":"account.initTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"message_users","type":"flags.1?true"},{"name":"message_chats","type":"flags.2?true"},{"name":"message_megagroups","type":"flags.3?true"},{"name":"message_channels","type":"flags.4?true"},{"name":"files","type":"flags.5?true"},{"name":"file_max_size","type":"flags.5?int"}],"type":"account.Takeout"},{"id":"489050862","method":"account.finishTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.0?true"}],"type":"Bool"},{"id":"486505992","method":"messages.getSplitRanges","params":[],"type":"Vector"},{"id":"911373810","method":"invokeWithMessagesRange","params":[{"name":"range","type":"MessageRange"},{"name":"query","type":"!X"}],"type":"X"},{"id":"-1398145746","method":"invokeWithTakeout","params":[{"name":"takeout_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":"-1031349873","method":"messages.markDialogUnread","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":"585256482","method":"messages.getDialogUnreadMarks","params":[],"type":"Vector"},{"id":"-2062238246","method":"contacts.toggleTopPeers","params":[{"name":"enabled","type":"Bool"}],"type":"Bool"},{"id":"2119757468","method":"messages.clearAllDrafts","params":[],"type":"Bool"},{"id":"-1735311088","method":"help.getAppConfig","params":[],"type":"JSONValue"},{"id":"1862465352","method":"help.saveAppLog","params":[{"name":"events","type":"Vector"}],"type":"Bool"},{"id":"-966677240","method":"help.getPassportConfig","params":[{"name":"hash","type":"int"}],"type":"help.PassportConfig"},{"id":"1784243458","method":"langpack.getLanguage","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackLanguage"},{"id":"-760547348","method":"messages.updatePinnedMessage","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"unpin","type":"flags.1?true"},{"name":"pm_oneside","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"Updates"},{"id":"-1881204448","method":"account.confirmPasswordEmail","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":"2055154197","method":"account.resendPasswordEmail","params":[],"type":"Bool"},{"id":"-1043606090","method":"account.cancelPasswordEmail","params":[],"type":"Bool"},{"id":"-748624084","method":"help.getSupportName","params":[],"type":"help.SupportName"},{"id":"59377875","method":"help.getUserInfo","params":[{"name":"user_id","type":"InputUser"}],"type":"help.UserInfo"},{"id":"1723407216","method":"help.editUserInfo","params":[{"name":"user_id","type":"InputUser"},{"name":"message","type":"string"},{"name":"entities","type":"Vector"}],"type":"help.UserInfo"},{"id":"-1626880216","method":"account.getContactSignUpNotification","params":[],"type":"Bool"},{"id":"-806076575","method":"account.setContactSignUpNotification","params":[{"name":"silent","type":"Bool"}],"type":"Bool"},{"id":"1398240377","method":"account.getNotifyExceptions","params":[{"name":"flags","type":"#"},{"name":"compare_sound","type":"flags.1?true"},{"name":"peer","type":"flags.0?InputNotifyPeer"}],"type":"Updates"},{"id":"283795844","method":"messages.sendVote","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"options","type":"Vector"}],"type":"Updates"},{"id":"1941660731","method":"messages.getPollResults","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":"1848369232","method":"messages.getOnlines","params":[{"name":"peer","type":"InputPeer"}],"type":"ChatOnlines"},{"id":"-2127811866","method":"messages.getStatsURL","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"params","type":"string"}],"type":"StatsURL"},{"id":"-554301545","method":"messages.editChatAbout","params":[{"name":"peer","type":"InputPeer"},{"name":"about","type":"string"}],"type":"Bool"},{"id":"-1517917375","method":"messages.editChatDefaultBannedRights","params":[{"name":"peer","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":"-57811990","method":"account.getWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"}],"type":"WallPaper"},{"id":"-578472351","method":"account.uploadWallPaper","params":[{"name":"file","type":"InputFile"},{"name":"mime_type","type":"string"},{"name":"settings","type":"WallPaperSettings"}],"type":"WallPaper"},{"id":"1817860919","method":"account.saveWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"unsave","type":"Bool"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":"-18000023","method":"account.installWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":"-1153722364","method":"account.resetWallPapers","params":[],"type":"Bool"},{"id":"1457130303","method":"account.getAutoDownloadSettings","params":[],"type":"account.AutoDownloadSettings"},{"id":"1995661875","method":"account.saveAutoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"low","type":"flags.0?true"},{"name":"high","type":"flags.1?true"},{"name":"settings","type":"AutoDownloadSettings"}],"type":"Bool"},{"id":"899735650","method":"messages.getEmojiKeywords","params":[{"name":"lang_code","type":"string"}],"type":"EmojiKeywordsDifference"},{"id":"352892591","method":"messages.getEmojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"EmojiKeywordsDifference"},{"id":"1318675378","method":"messages.getEmojiKeywordsLanguages","params":[{"name":"lang_codes","type":"Vector"}],"type":"Vector"},{"id":"-709817306","method":"messages.getEmojiURL","params":[{"name":"lang_code","type":"string"}],"type":"EmojiURL"},{"id":"1749536939","method":"folders.editPeerFolders","params":[{"name":"folder_peers","type":"Vector"}],"type":"Updates"},{"id":"472471681","method":"folders.deleteFolder","params":[{"name":"folder_id","type":"int"}],"type":"Updates"},{"id":"1932455680","method":"messages.getSearchCounters","params":[{"name":"peer","type":"InputPeer"},{"name":"filters","type":"Vector"}],"type":"Vector"},{"id":"-170208392","method":"channels.getGroupsForDiscussion","params":[],"type":"messages.Chats"},{"id":"1079520178","method":"channels.setDiscussionGroup","params":[{"name":"broadcast","type":"InputChannel"},{"name":"group","type":"InputChannel"}],"type":"Bool"},{"id":"428848198","method":"messages.requestUrlAuth","params":[{"name":"flags","type":"#"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":"-1322487515","method":"messages.acceptUrlAuth","params":[{"name":"flags","type":"#"},{"name":"write_allowed","type":"flags.0?true"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":"1336717624","method":"messages.hidePeerSettingsBar","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":"-386636848","method":"contacts.addContact","params":[{"name":"flags","type":"#"},{"name":"add_phone_privacy_exception","type":"flags.0?true"},{"name":"id","type":"InputUser"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"phone","type":"string"}],"type":"Updates"},{"id":"-130964977","method":"contacts.acceptContact","params":[{"name":"id","type":"InputUser"}],"type":"Updates"},{"id":"-1892102881","method":"channels.editCreator","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"password","type":"InputCheckPasswordSRP"}],"type":"Updates"},{"id":"-750207932","method":"contacts.getLocated","params":[{"name":"flags","type":"#"},{"name":"background","type":"flags.1?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"self_expires","type":"flags.0?int"}],"type":"Updates"},{"id":"1491484525","method":"channels.editLocation","params":[{"name":"channel","type":"InputChannel"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"address","type":"string"}],"type":"Bool"},{"id":"-304832784","method":"channels.toggleSlowMode","params":[{"name":"channel","type":"InputChannel"},{"name":"seconds","type":"int"}],"type":"Updates"},{"id":"-490575781","method":"messages.getScheduledHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":"-1111817116","method":"messages.getScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":"-1120369398","method":"messages.sendScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":"1504586518","method":"messages.deleteScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":"473805619","method":"account.uploadTheme","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.0?InputFile"},{"name":"file_name","type":"string"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":"-2077048289","method":"account.createTheme","params":[{"name":"flags","type":"#"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":"1555261397","method":"account.updateTheme","params":[{"name":"flags","type":"#"},{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"slug","type":"flags.0?string"},{"name":"title","type":"flags.1?string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":"-229175188","method":"account.saveTheme","params":[{"name":"theme","type":"InputTheme"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":"2061776695","method":"account.installTheme","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"format","type":"flags.1?string"},{"name":"theme","type":"flags.1?InputTheme"}],"type":"Bool"},{"id":"-1919060949","method":"account.getTheme","params":[{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"document_id","type":"long"}],"type":"Theme"},{"id":"676939512","method":"account.getThemes","params":[{"name":"format","type":"string"},{"name":"hash","type":"int"}],"type":"account.Themes"},{"id":"-1313598185","method":"auth.exportLoginToken","params":[{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"except_ids","type":"Vector"}],"type":"auth.LoginToken"},{"id":"-1783866140","method":"auth.importLoginToken","params":[{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":"-392909491","method":"auth.acceptLoginToken","params":[{"name":"token","type":"bytes"}],"type":"Authorization"},{"id":"-1250643605","method":"account.setContentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"}],"type":"Bool"},{"id":"-1952756306","method":"account.getContentSettings","params":[],"type":"account.ContentSettings"},{"id":"300429806","method":"channels.getInactiveChannels","params":[],"type":"messages.InactiveChats"},{"id":"1705865692","method":"account.getMultiWallPapers","params":[{"name":"wallpapers","type":"Vector"}],"type":"Vector"},{"id":"-1200736242","method":"messages.getPollVotes","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"option","type":"flags.0?bytes"},{"name":"offset","type":"flags.1?string"},{"name":"limit","type":"int"}],"type":"messages.VotesList"},{"id":"-1257951254","method":"messages.toggleStickerSets","params":[{"name":"flags","type":"#"},{"name":"uninstall","type":"flags.0?true"},{"name":"archive","type":"flags.1?true"},{"name":"unarchive","type":"flags.2?true"},{"name":"stickersets","type":"Vector"}],"type":"Bool"},{"id":"779736953","method":"payments.getBankCardData","params":[{"name":"number","type":"string"}],"type":"payments.BankCardData"},{"id":"-241247891","method":"messages.getDialogFilters","params":[],"type":"Vector"},{"id":"-1566780372","method":"messages.getSuggestedDialogFilters","params":[],"type":"Vector"},{"id":"450142282","method":"messages.updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Bool"},{"id":"-983318044","method":"messages.updateDialogFiltersOrder","params":[{"name":"order","type":"Vector"}],"type":"Bool"},{"id":"-1421720550","method":"stats.getBroadcastStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.BroadcastStats"},{"id":"1646092192","method":"stats.loadAsyncGraph","params":[{"name":"flags","type":"#"},{"name":"token","type":"string"},{"name":"x","type":"flags.0?long"}],"type":"StatsGraph"},{"id":"-1707717072","method":"stickers.setStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":"85399130","method":"bots.setBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"},{"name":"commands","type":"Vector"}],"type":"Bool"},{"id":"1608974939","method":"messages.getOldFeaturedStickers","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.FeaturedStickers"},{"id":"-1063816159","method":"help.getPromoData","params":[],"type":"help.PromoData"},{"id":"505748629","method":"help.hidePromoData","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":"-8744061","method":"phone.sendSignalingData","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"data","type":"bytes"}],"type":"Bool"},{"id":"-589330937","method":"stats.getMegagroupStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.MegagroupStats"},{"id":"-349483786","method":"account.getGlobalPrivacySettings","params":[],"type":"GlobalPrivacySettings"},{"id":"517647042","method":"account.setGlobalPrivacySettings","params":[{"name":"settings","type":"GlobalPrivacySettings"}],"type":"GlobalPrivacySettings"},{"id":"-183649631","method":"help.dismissSuggestion","params":[{"name":"peer","type":"InputPeer"},{"name":"suggestion","type":"string"}],"type":"Bool"},{"id":"1935116200","method":"help.getCountriesList","params":[{"name":"lang_code","type":"string"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":"615875002","method":"messages.getReplies","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":"1147761405","method":"messages.getDiscussionMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"messages.DiscussionMessage"},{"id":"-147740172","method":"messages.readDiscussion","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Bool"},{"id":"698914348","method":"contacts.blockFromReplies","params":[{"name":"flags","type":"#"},{"name":"delete_message","type":"flags.0?true"},{"name":"delete_history","type":"flags.1?true"},{"name":"report_spam","type":"flags.2?true"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":"1445996571","method":"stats.getMessagePublicForwards","params":[{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":"-1226791947","method":"stats.getMessageStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"}],"type":"stats.MessageStats"},{"id":"-265962357","method":"messages.unpinAllMessages","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":"1221445336","method":"phone.createGroupCall","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"schedule_date","type":"flags.1?int"}],"type":"Updates"},{"id":"-1322057861","method":"phone.joinGroupCall","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"video_stopped","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_as","type":"InputPeer"},{"name":"invite_hash","type":"flags.1?string"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":"1342404601","method":"phone.leaveGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"source","type":"int"}],"type":"Updates"},{"id":"2067345760","method":"phone.inviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":"2054648117","method":"phone.discardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":"1958458429","method":"phone.toggleGroupCallSettings","params":[{"name":"flags","type":"#"},{"name":"reset_invite_hash","type":"flags.1?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_muted","type":"flags.0?Bool"}],"type":"Updates"},{"id":"68699611","method":"phone.getGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"limit","type":"int"}],"type":"phone.GroupCall"},{"id":"-984033109","method":"phone.getGroupParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"ids","type":"Vector"},{"name":"sources","type":"Vector"},{"name":"offset","type":"string"},{"name":"limit","type":"int"}],"type":"phone.GroupParticipants"},{"id":"-1248003721","method":"phone.checkGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"sources","type":"Vector"}],"type":"Vector"},{"id":"-2094760687","method":"messages.deleteChat","params":[{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":"-104078327","method":"messages.deletePhoneCallHistory","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"}],"type":"messages.AffectedFoundMessages"},{"id":"1140726259","method":"messages.checkHistoryImport","params":[{"name":"import_head","type":"string"}],"type":"messages.HistoryImportParsed"},{"id":"873008187","method":"messages.initHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"file","type":"InputFile"},{"name":"media_count","type":"int"}],"type":"messages.HistoryImport"},{"id":"713433234","method":"messages.uploadImportedMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"},{"name":"file_name","type":"string"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":"-1271008444","method":"messages.startHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"}],"type":"Bool"},{"id":"-1565154314","method":"messages.getExportedChatInvites","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.3?true"},{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"},{"name":"offset_date","type":"flags.2?int"},{"name":"offset_link","type":"flags.2?string"},{"name":"limit","type":"int"}],"type":"messages.ExportedChatInvites"},{"id":"1937010524","method":"messages.getExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"messages.ExportedChatInvite"},{"id":"48562110","method":"messages.editExportedChatInvite","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"messages.ExportedChatInvite"},{"id":"1452833749","method":"messages.deleteRevokedExportedChatInvites","params":[{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"}],"type":"Bool"},{"id":"-731601877","method":"messages.deleteExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"Bool"},{"id":"958457583","method":"messages.getAdminsWithInvites","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.ChatAdminsWithInvites"},{"id":"654013065","method":"messages.getChatInviteImporters","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"offset_date","type":"int"},{"name":"offset_user","type":"InputUser"},{"name":"limit","type":"int"}],"type":"messages.ChatInviteImporters"},{"id":"-1207017500","method":"messages.setHistoryTTL","params":[{"name":"peer","type":"InputPeer"},{"name":"period","type":"int"}],"type":"Updates"},{"id":"-91437323","method":"account.reportProfilePhoto","params":[{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"InputPhoto"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":"187239529","method":"channels.convertToGigagroup","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":"1573261059","method":"messages.checkHistoryImportPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.CheckedHistoryImportPeer"},{"id":"-1070962985","method":"phone.toggleGroupCallRecord","params":[{"name":"flags","type":"#"},{"name":"start","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"},{"name":"title","type":"flags.1?string"}],"type":"Updates"},{"id":"-1524155713","method":"phone.editGroupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"participant","type":"InputPeer"},{"name":"muted","type":"flags.0?Bool"},{"name":"volume","type":"flags.1?int"},{"name":"raise_hand","type":"flags.2?Bool"},{"name":"video_stopped","type":"flags.3?Bool"},{"name":"video_paused","type":"flags.4?Bool"},{"name":"presentation_paused","type":"flags.5?Bool"}],"type":"Updates"},{"id":"480685066","method":"phone.editGroupCallTitle","params":[{"name":"call","type":"InputGroupCall"},{"name":"title","type":"string"}],"type":"Updates"},{"id":"-277077702","method":"phone.getGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"}],"type":"phone.JoinAsPeers"},{"id":"-425040769","method":"phone.exportGroupCallInvite","params":[{"name":"flags","type":"#"},{"name":"can_self_unmute","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"}],"type":"phone.ExportedGroupCallInvite"},{"id":"563885286","method":"phone.toggleGroupCallStartSubscription","params":[{"name":"call","type":"InputGroupCall"},{"name":"subscribed","type":"Bool"}],"type":"Updates"},{"id":"1451287362","method":"phone.startScheduledGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":"1465786252","method":"phone.saveDefaultGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"},{"name":"join_as","type":"InputPeer"}],"type":"Bool"},{"id":"-873829436","method":"phone.joinGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":"475058500","method":"phone.leaveGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":"676017721","method":"stickers.checkShortName","params":[{"name":"short_name","type":"string"}],"type":"Bool"},{"id":"1303364867","method":"stickers.suggestShortName","params":[{"name":"title","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":"1032708345","method":"bots.resetBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Bool"},{"id":"-481554986","method":"bots.getBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Vector"},{"id":"-1828139493","method":"account.resetPassword","params":[],"type":"account.ResetPasswordResult"},{"id":"1284770294","method":"account.declinePasswordReset","params":[],"type":"Bool"},{"id":"221691769","method":"auth.checkRecoveryPassword","params":[{"name":"code","type":"string"}],"type":"Bool"}]}, + "API": {"constructors":[{"id":3162085175,"predicate":"boolFalse","params":[],"type":"Bool"},{"id":2574415285,"predicate":"boolTrue","params":[],"type":"Bool"},{"id":1072550713,"predicate":"true","params":[],"type":"True"},{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":3300522427,"predicate":"error","params":[{"name":"code","type":"int"},{"name":"text","type":"string"}],"type":"Error"},{"id":1450380236,"predicate":"null","params":[],"type":"Null"},{"id":2134579434,"predicate":"inputPeerEmpty","params":[],"type":"InputPeer"},{"id":2107670217,"predicate":"inputPeerSelf","params":[],"type":"InputPeer"},{"id":900291769,"predicate":"inputPeerChat","params":[{"name":"chat_id","type":"long"}],"type":"InputPeer"},{"id":3723011404,"predicate":"inputPeerUser","params":[{"name":"user_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":666680316,"predicate":"inputPeerChannel","params":[{"name":"channel_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":2826635804,"predicate":"inputPeerUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"long"}],"type":"InputPeer"},{"id":3173648448,"predicate":"inputPeerChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"long"}],"type":"InputPeer"},{"id":3112732367,"predicate":"inputUserEmpty","params":[],"type":"InputUser"},{"id":4156666175,"predicate":"inputUserSelf","params":[],"type":"InputUser"},{"id":4061223110,"predicate":"inputUser","params":[{"name":"user_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputUser"},{"id":497305826,"predicate":"inputUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"long"}],"type":"InputUser"},{"id":4086478836,"predicate":"inputPhoneContact","params":[{"name":"client_id","type":"long"},{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"InputContact"},{"id":4113560191,"predicate":"inputFile","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"},{"name":"md5_checksum","type":"string"}],"type":"InputFile"},{"id":4199484341,"predicate":"inputFileBig","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"}],"type":"InputFile"},{"id":2523198847,"predicate":"inputMediaEmpty","params":[],"type":"InputMedia"},{"id":505969924,"predicate":"inputMediaUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":3015312949,"predicate":"inputMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputPhoto"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":4190388548,"predicate":"inputMediaGeoPoint","params":[{"name":"geo_point","type":"InputGeoPoint"}],"type":"InputMedia"},{"id":4171988475,"predicate":"inputMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"}],"type":"InputMedia"},{"id":1530447553,"predicate":"inputMediaUploadedDocument","params":[{"name":"flags","type":"#"},{"name":"nosound_video","type":"flags.3?true"},{"name":"force_file","type":"flags.4?true"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.2?InputFile"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":860303448,"predicate":"inputMediaDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputDocument"},{"name":"ttl_seconds","type":"flags.0?int"},{"name":"query","type":"flags.1?string"}],"type":"InputMedia"},{"id":3242007569,"predicate":"inputMediaVenue","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"InputMedia"},{"id":3854302746,"predicate":"inputMediaPhotoExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":4216511641,"predicate":"inputMediaDocumentExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":3544138739,"predicate":"inputMediaGame","params":[{"name":"id","type":"InputGame"}],"type":"InputMedia"},{"id":3648624756,"predicate":"inputMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"start_param","type":"flags.1?string"}],"type":"InputMedia"},{"id":2535434307,"predicate":"inputMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"stopped","type":"flags.0?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.2?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"}],"type":"InputMedia"},{"id":261416433,"predicate":"inputMediaPoll","params":[{"name":"flags","type":"#"},{"name":"poll","type":"Poll"},{"name":"correct_answers","type":"flags.0?Vector"},{"name":"solution","type":"flags.1?string"},{"name":"solution_entities","type":"flags.1?Vector"}],"type":"InputMedia"},{"id":3866083195,"predicate":"inputMediaDice","params":[{"name":"emoticon","type":"string"}],"type":"InputMedia"},{"id":480546647,"predicate":"inputChatPhotoEmpty","params":[],"type":"InputChatPhoto"},{"id":3326243406,"predicate":"inputChatUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"InputChatPhoto"},{"id":2303962423,"predicate":"inputChatPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputChatPhoto"},{"id":3837862870,"predicate":"inputGeoPointEmpty","params":[],"type":"InputGeoPoint"},{"id":1210199983,"predicate":"inputGeoPoint","params":[{"name":"flags","type":"#"},{"name":"lat","type":"double"},{"name":"long","type":"double"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"InputGeoPoint"},{"id":483901197,"predicate":"inputPhotoEmpty","params":[],"type":"InputPhoto"},{"id":1001634122,"predicate":"inputPhoto","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputPhoto"},{"id":3755650017,"predicate":"inputFileLocation","params":[{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputFileLocation"},{"id":4112735573,"predicate":"inputEncryptedFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":3134223748,"predicate":"inputDocumentFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":3418877480,"predicate":"inputSecureFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":700340377,"predicate":"inputTakeoutFileLocation","params":[],"type":"InputFileLocation"},{"id":1075322878,"predicate":"inputPhotoFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":3627312883,"predicate":"inputPhotoLegacyFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"}],"type":"InputFileLocation"},{"id":925204121,"predicate":"inputPeerPhotoFileLocation","params":[{"name":"flags","type":"#"},{"name":"big","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"long"}],"type":"InputFileLocation"},{"id":2642736091,"predicate":"inputStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb_version","type":"int"}],"type":"InputFileLocation"},{"id":93890858,"predicate":"inputGroupCallStream","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"time_ms","type":"long"},{"name":"scale","type":"int"},{"name":"video_channel","type":"flags.0?int"},{"name":"video_quality","type":"flags.0?int"}],"type":"InputFileLocation"},{"id":1498486562,"predicate":"peerUser","params":[{"name":"user_id","type":"long"}],"type":"Peer"},{"id":918946202,"predicate":"peerChat","params":[{"name":"chat_id","type":"long"}],"type":"Peer"},{"id":2728736542,"predicate":"peerChannel","params":[{"name":"channel_id","type":"long"}],"type":"Peer"},{"id":2861972229,"predicate":"storage.fileUnknown","params":[],"type":"storage.FileType"},{"id":1086091090,"predicate":"storage.filePartial","params":[],"type":"storage.FileType"},{"id":8322574,"predicate":"storage.fileJpeg","params":[],"type":"storage.FileType"},{"id":3403786975,"predicate":"storage.fileGif","params":[],"type":"storage.FileType"},{"id":172975040,"predicate":"storage.filePng","params":[],"type":"storage.FileType"},{"id":2921222285,"predicate":"storage.filePdf","params":[],"type":"storage.FileType"},{"id":1384777335,"predicate":"storage.fileMp3","params":[],"type":"storage.FileType"},{"id":1258941372,"predicate":"storage.fileMov","params":[],"type":"storage.FileType"},{"id":3016663268,"predicate":"storage.fileMp4","params":[],"type":"storage.FileType"},{"id":276907596,"predicate":"storage.fileWebp","params":[],"type":"storage.FileType"},{"id":3552332666,"predicate":"userEmpty","params":[{"name":"id","type":"long"}],"type":"User"},{"id":1073147056,"predicate":"user","params":[{"name":"flags","type":"#"},{"name":"self","type":"flags.10?true"},{"name":"contact","type":"flags.11?true"},{"name":"mutual_contact","type":"flags.12?true"},{"name":"deleted","type":"flags.13?true"},{"name":"bot","type":"flags.14?true"},{"name":"bot_chat_history","type":"flags.15?true"},{"name":"bot_nochats","type":"flags.16?true"},{"name":"verified","type":"flags.17?true"},{"name":"restricted","type":"flags.18?true"},{"name":"min","type":"flags.20?true"},{"name":"bot_inline_geo","type":"flags.21?true"},{"name":"support","type":"flags.23?true"},{"name":"scam","type":"flags.24?true"},{"name":"apply_min_photo","type":"flags.25?true"},{"name":"fake","type":"flags.26?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"flags.0?long"},{"name":"first_name","type":"flags.1?string"},{"name":"last_name","type":"flags.2?string"},{"name":"username","type":"flags.3?string"},{"name":"phone","type":"flags.4?string"},{"name":"photo","type":"flags.5?UserProfilePhoto"},{"name":"status","type":"flags.6?UserStatus"},{"name":"bot_info_version","type":"flags.14?int"},{"name":"restriction_reason","type":"flags.18?Vector"},{"name":"bot_inline_placeholder","type":"flags.19?string"},{"name":"lang_code","type":"flags.22?string"}],"type":"User"},{"id":1326562017,"predicate":"userProfilePhotoEmpty","params":[],"type":"UserProfilePhoto"},{"id":2194798342,"predicate":"userProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"UserProfilePhoto"},{"id":164646985,"predicate":"userStatusEmpty","params":[],"type":"UserStatus"},{"id":3988339017,"predicate":"userStatusOnline","params":[{"name":"expires","type":"int"}],"type":"UserStatus"},{"id":9203775,"predicate":"userStatusOffline","params":[{"name":"was_online","type":"int"}],"type":"UserStatus"},{"id":3798942449,"predicate":"userStatusRecently","params":[],"type":"UserStatus"},{"id":129960444,"predicate":"userStatusLastWeek","params":[],"type":"UserStatus"},{"id":2011940674,"predicate":"userStatusLastMonth","params":[],"type":"UserStatus"},{"id":693512293,"predicate":"chatEmpty","params":[{"name":"id","type":"long"}],"type":"Chat"},{"id":1103884886,"predicate":"chat","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"kicked","type":"flags.1?true"},{"name":"left","type":"flags.2?true"},{"name":"deactivated","type":"flags.5?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"id","type":"long"},{"name":"title","type":"string"},{"name":"photo","type":"ChatPhoto"},{"name":"participants_count","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"migrated_to","type":"flags.6?InputChannel"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"}],"type":"Chat"},{"id":1704108455,"predicate":"chatForbidden","params":[{"name":"id","type":"long"},{"name":"title","type":"string"}],"type":"Chat"},{"id":2187439201,"predicate":"channel","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"left","type":"flags.2?true"},{"name":"broadcast","type":"flags.5?true"},{"name":"verified","type":"flags.7?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"restricted","type":"flags.9?true"},{"name":"signatures","type":"flags.11?true"},{"name":"min","type":"flags.12?true"},{"name":"scam","type":"flags.19?true"},{"name":"has_link","type":"flags.20?true"},{"name":"has_geo","type":"flags.21?true"},{"name":"slowmode_enabled","type":"flags.22?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"fake","type":"flags.25?true"},{"name":"gigagroup","type":"flags.26?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"flags.13?long"},{"name":"title","type":"string"},{"name":"username","type":"flags.6?string"},{"name":"photo","type":"ChatPhoto"},{"name":"date","type":"int"},{"name":"restriction_reason","type":"flags.9?Vector"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"banned_rights","type":"flags.15?ChatBannedRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"},{"name":"participants_count","type":"flags.17?int"}],"type":"Chat"},{"id":399807445,"predicate":"channelForbidden","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.5?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"until_date","type":"flags.16?int"}],"type":"Chat"},{"id":1304281241,"predicate":"chatFull","params":[{"name":"flags","type":"#"},{"name":"can_set_username","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.8?true"},{"name":"id","type":"long"},{"name":"about","type":"string"},{"name":"participants","type":"ChatParticipants"},{"name":"chat_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.13?ExportedChatInvite"},{"name":"bot_info","type":"flags.3?Vector"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"call","type":"flags.12?InputGroupCall"},{"name":"ttl_period","type":"flags.14?int"},{"name":"groupcall_default_join_as","type":"flags.15?Peer"},{"name":"theme_emoticon","type":"flags.16?string"}],"type":"ChatFull"},{"id":3920787991,"predicate":"channelFull","params":[{"name":"flags","type":"#"},{"name":"can_view_participants","type":"flags.3?true"},{"name":"can_set_username","type":"flags.6?true"},{"name":"can_set_stickers","type":"flags.7?true"},{"name":"hidden_prehistory","type":"flags.10?true"},{"name":"can_set_location","type":"flags.16?true"},{"name":"has_scheduled","type":"flags.19?true"},{"name":"can_view_stats","type":"flags.20?true"},{"name":"blocked","type":"flags.22?true"},{"name":"id","type":"long"},{"name":"about","type":"string"},{"name":"participants_count","type":"flags.0?int"},{"name":"admins_count","type":"flags.1?int"},{"name":"kicked_count","type":"flags.2?int"},{"name":"banned_count","type":"flags.2?int"},{"name":"online_count","type":"flags.13?int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"chat_photo","type":"Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.23?ExportedChatInvite"},{"name":"bot_info","type":"Vector"},{"name":"migrated_from_chat_id","type":"flags.4?long"},{"name":"migrated_from_max_id","type":"flags.4?int"},{"name":"pinned_msg_id","type":"flags.5?int"},{"name":"stickerset","type":"flags.8?StickerSet"},{"name":"available_min_id","type":"flags.9?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"linked_chat_id","type":"flags.14?long"},{"name":"location","type":"flags.15?ChannelLocation"},{"name":"slowmode_seconds","type":"flags.17?int"},{"name":"slowmode_next_send_date","type":"flags.18?int"},{"name":"stats_dc","type":"flags.12?int"},{"name":"pts","type":"int"},{"name":"call","type":"flags.21?InputGroupCall"},{"name":"ttl_period","type":"flags.24?int"},{"name":"pending_suggestions","type":"flags.25?Vector"},{"name":"groupcall_default_join_as","type":"flags.26?Peer"},{"name":"theme_emoticon","type":"flags.27?string"}],"type":"ChatFull"},{"id":3224190983,"predicate":"chatParticipant","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":3832270564,"predicate":"chatParticipantCreator","params":[{"name":"user_id","type":"long"}],"type":"ChatParticipant"},{"id":2694004571,"predicate":"chatParticipantAdmin","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":2271466465,"predicate":"chatParticipantsForbidden","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"long"},{"name":"self_participant","type":"flags.0?ChatParticipant"}],"type":"ChatParticipants"},{"id":1018991608,"predicate":"chatParticipants","params":[{"name":"chat_id","type":"long"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"ChatParticipants"},{"id":935395612,"predicate":"chatPhotoEmpty","params":[],"type":"ChatPhoto"},{"id":476978193,"predicate":"chatPhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"ChatPhoto"},{"id":2426849924,"predicate":"messageEmpty","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"peer_id","type":"flags.0?Peer"}],"type":"Message"},{"id":2245446626,"predicate":"message","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"from_scheduled","type":"flags.18?true"},{"name":"legacy","type":"flags.19?true"},{"name":"edit_hide","type":"flags.21?true"},{"name":"pinned","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"message","type":"string"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"reply_markup","type":"flags.6?ReplyMarkup"},{"name":"entities","type":"flags.7?Vector"},{"name":"views","type":"flags.10?int"},{"name":"forwards","type":"flags.10?int"},{"name":"replies","type":"flags.23?MessageReplies"},{"name":"edit_date","type":"flags.15?int"},{"name":"post_author","type":"flags.16?string"},{"name":"grouped_id","type":"flags.17?long"},{"name":"restriction_reason","type":"flags.22?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":721967202,"predicate":"messageService","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"legacy","type":"flags.19?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"action","type":"MessageAction"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":1038967584,"predicate":"messageMediaEmpty","params":[],"type":"MessageMedia"},{"id":1766936791,"predicate":"messageMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"photo","type":"flags.0?Photo"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1457575028,"predicate":"messageMediaGeo","params":[{"name":"geo","type":"GeoPoint"}],"type":"MessageMedia"},{"id":1882335561,"predicate":"messageMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"user_id","type":"long"}],"type":"MessageMedia"},{"id":2676290718,"predicate":"messageMediaUnsupported","params":[],"type":"MessageMedia"},{"id":2628808919,"predicate":"messageMediaDocument","params":[{"name":"flags","type":"#"},{"name":"document","type":"flags.0?Document"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":2737690112,"predicate":"messageMediaWebPage","params":[{"name":"webpage","type":"WebPage"}],"type":"MessageMedia"},{"id":784356159,"predicate":"messageMediaVenue","params":[{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"MessageMedia"},{"id":4256272392,"predicate":"messageMediaGame","params":[{"name":"game","type":"Game"}],"type":"MessageMedia"},{"id":2220168007,"predicate":"messageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"receipt_msg_id","type":"flags.2?int"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"start_param","type":"string"}],"type":"MessageMedia"},{"id":3108030054,"predicate":"messageMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"int"},{"name":"proximity_notification_radius","type":"flags.1?int"}],"type":"MessageMedia"},{"id":1272375192,"predicate":"messageMediaPoll","params":[{"name":"poll","type":"Poll"},{"name":"results","type":"PollResults"}],"type":"MessageMedia"},{"id":1065280907,"predicate":"messageMediaDice","params":[{"name":"value","type":"int"},{"name":"emoticon","type":"string"}],"type":"MessageMedia"},{"id":3064919984,"predicate":"messageActionEmpty","params":[],"type":"MessageAction"},{"id":3175599021,"predicate":"messageActionChatCreate","params":[{"name":"title","type":"string"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":3047280218,"predicate":"messageActionChatEditTitle","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":2144015272,"predicate":"messageActionChatEditPhoto","params":[{"name":"photo","type":"Photo"}],"type":"MessageAction"},{"id":2514746351,"predicate":"messageActionChatDeletePhoto","params":[],"type":"MessageAction"},{"id":365886720,"predicate":"messageActionChatAddUser","params":[{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":2755604684,"predicate":"messageActionChatDeleteUser","params":[{"name":"user_id","type":"long"}],"type":"MessageAction"},{"id":51520707,"predicate":"messageActionChatJoinedByLink","params":[{"name":"inviter_id","type":"long"}],"type":"MessageAction"},{"id":2513611922,"predicate":"messageActionChannelCreate","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":3775102866,"predicate":"messageActionChatMigrateTo","params":[{"name":"channel_id","type":"long"}],"type":"MessageAction"},{"id":3929622761,"predicate":"messageActionChannelMigrateFrom","params":[{"name":"title","type":"string"},{"name":"chat_id","type":"long"}],"type":"MessageAction"},{"id":2495428845,"predicate":"messageActionPinMessage","params":[],"type":"MessageAction"},{"id":2679813636,"predicate":"messageActionHistoryClear","params":[],"type":"MessageAction"},{"id":2460428406,"predicate":"messageActionGameScore","params":[{"name":"game_id","type":"long"},{"name":"score","type":"int"}],"type":"MessageAction"},{"id":2402399015,"predicate":"messageActionPaymentSentMe","params":[{"name":"flags","type":"#"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"charge","type":"PaymentCharge"}],"type":"MessageAction"},{"id":1080663248,"predicate":"messageActionPaymentSent","params":[{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"MessageAction"},{"id":2162236031,"predicate":"messageActionPhoneCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.2?true"},{"name":"call_id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"MessageAction"},{"id":1200788123,"predicate":"messageActionScreenshotTaken","params":[],"type":"MessageAction"},{"id":4209418070,"predicate":"messageActionCustomAction","params":[{"name":"message","type":"string"}],"type":"MessageAction"},{"id":2884218878,"predicate":"messageActionBotAllowed","params":[{"name":"domain","type":"string"}],"type":"MessageAction"},{"id":455635795,"predicate":"messageActionSecureValuesSentMe","params":[{"name":"values","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"MessageAction"},{"id":3646710100,"predicate":"messageActionSecureValuesSent","params":[{"name":"types","type":"Vector"}],"type":"MessageAction"},{"id":4092747638,"predicate":"messageActionContactSignUp","params":[],"type":"MessageAction"},{"id":2564871831,"predicate":"messageActionGeoProximityReached","params":[{"name":"from_id","type":"Peer"},{"name":"to_id","type":"Peer"},{"name":"distance","type":"int"}],"type":"MessageAction"},{"id":2047704898,"predicate":"messageActionGroupCall","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"duration","type":"flags.0?int"}],"type":"MessageAction"},{"id":1345295095,"predicate":"messageActionInviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":2853895165,"predicate":"messageActionSetMessagesTTL","params":[{"name":"period","type":"int"}],"type":"MessageAction"},{"id":3013637729,"predicate":"messageActionGroupCallScheduled","params":[{"name":"call","type":"InputGroupCall"},{"name":"schedule_date","type":"int"}],"type":"MessageAction"},{"id":2860016453,"predicate":"messageActionSetChatTheme","params":[{"name":"emoticon","type":"string"}],"type":"MessageAction"},{"id":739712882,"predicate":"dialog","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"unread_mark","type":"flags.3?true"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"unread_mentions_count","type":"int"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"pts","type":"flags.0?int"},{"name":"draft","type":"flags.1?DraftMessage"},{"name":"folder_id","type":"flags.4?int"}],"type":"Dialog"},{"id":1908216652,"predicate":"dialogFolder","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"folder","type":"Folder"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"unread_muted_peers_count","type":"int"},{"name":"unread_unmuted_peers_count","type":"int"},{"name":"unread_muted_messages_count","type":"int"},{"name":"unread_unmuted_messages_count","type":"int"}],"type":"Dialog"},{"id":590459437,"predicate":"photoEmpty","params":[{"name":"id","type":"long"}],"type":"Photo"},{"id":4212750949,"predicate":"photo","params":[{"name":"flags","type":"#"},{"name":"has_stickers","type":"flags.0?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"sizes","type":"Vector"},{"name":"video_sizes","type":"flags.1?Vector"},{"name":"dc_id","type":"int"}],"type":"Photo"},{"id":236446268,"predicate":"photoSizeEmpty","params":[{"name":"type","type":"string"}],"type":"PhotoSize"},{"id":1976012384,"predicate":"photoSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"}],"type":"PhotoSize"},{"id":35527382,"predicate":"photoCachedSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":3769678894,"predicate":"photoStrippedSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":4198431637,"predicate":"photoSizeProgressive","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"sizes","type":"Vector"}],"type":"PhotoSize"},{"id":3626061121,"predicate":"photoPathSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":286776671,"predicate":"geoPointEmpty","params":[],"type":"GeoPoint"},{"id":2997024355,"predicate":"geoPoint","params":[{"name":"flags","type":"#"},{"name":"long","type":"double"},{"name":"lat","type":"double"},{"name":"access_hash","type":"long"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"GeoPoint"},{"id":1577067778,"predicate":"auth.sentCode","params":[{"name":"flags","type":"#"},{"name":"type","type":"auth.SentCodeType"},{"name":"phone_code_hash","type":"string"},{"name":"next_type","type":"flags.1?auth.CodeType"},{"name":"timeout","type":"flags.2?int"}],"type":"auth.SentCode"},{"id":3439659286,"predicate":"auth.authorization","params":[{"name":"flags","type":"#"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"user","type":"User"}],"type":"auth.Authorization"},{"id":1148485274,"predicate":"auth.authorizationSignUpRequired","params":[{"name":"flags","type":"#"},{"name":"terms_of_service","type":"flags.0?help.TermsOfService"}],"type":"auth.Authorization"},{"id":3023364792,"predicate":"auth.exportedAuthorization","params":[{"name":"id","type":"long"},{"name":"bytes","type":"bytes"}],"type":"auth.ExportedAuthorization"},{"id":3099351820,"predicate":"inputNotifyPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputNotifyPeer"},{"id":423314455,"predicate":"inputNotifyUsers","params":[],"type":"InputNotifyPeer"},{"id":1251338318,"predicate":"inputNotifyChats","params":[],"type":"InputNotifyPeer"},{"id":2983951486,"predicate":"inputNotifyBroadcasts","params":[],"type":"InputNotifyPeer"},{"id":2621249934,"predicate":"inputPeerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"InputPeerNotifySettings"},{"id":2941295904,"predicate":"peerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"PeerNotifySettings"},{"id":1933519201,"predicate":"peerSettings","params":[{"name":"flags","type":"#"},{"name":"report_spam","type":"flags.0?true"},{"name":"add_contact","type":"flags.1?true"},{"name":"block_contact","type":"flags.2?true"},{"name":"share_contact","type":"flags.3?true"},{"name":"need_contacts_exception","type":"flags.4?true"},{"name":"report_geo","type":"flags.5?true"},{"name":"autoarchived","type":"flags.7?true"},{"name":"invite_members","type":"flags.8?true"},{"name":"geo_distance","type":"flags.6?int"}],"type":"PeerSettings"},{"id":2755118061,"predicate":"wallPaper","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"pattern","type":"flags.3?true"},{"name":"dark","type":"flags.4?true"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"document","type":"Document"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":3766501654,"predicate":"wallPaperNoFile","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"default","type":"flags.1?true"},{"name":"dark","type":"flags.4?true"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":1490799288,"predicate":"inputReportReasonSpam","params":[],"type":"ReportReason"},{"id":505595789,"predicate":"inputReportReasonViolence","params":[],"type":"ReportReason"},{"id":777640226,"predicate":"inputReportReasonPornography","params":[],"type":"ReportReason"},{"id":2918469347,"predicate":"inputReportReasonChildAbuse","params":[],"type":"ReportReason"},{"id":3252986545,"predicate":"inputReportReasonOther","params":[],"type":"ReportReason"},{"id":2609510714,"predicate":"inputReportReasonCopyright","params":[],"type":"ReportReason"},{"id":3688169197,"predicate":"inputReportReasonGeoIrrelevant","params":[],"type":"ReportReason"},{"id":4124956391,"predicate":"inputReportReasonFake","params":[],"type":"ReportReason"},{"id":3600285445,"predicate":"userFull","params":[{"name":"flags","type":"#"},{"name":"blocked","type":"flags.0?true"},{"name":"phone_calls_available","type":"flags.4?true"},{"name":"phone_calls_private","type":"flags.5?true"},{"name":"can_pin_message","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.12?true"},{"name":"video_calls_available","type":"flags.13?true"},{"name":"user","type":"User"},{"name":"about","type":"flags.1?string"},{"name":"settings","type":"PeerSettings"},{"name":"profile_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"bot_info","type":"flags.3?BotInfo"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"common_chats_count","type":"int"},{"name":"folder_id","type":"flags.11?int"},{"name":"ttl_period","type":"flags.14?int"},{"name":"theme_emoticon","type":"flags.15?string"}],"type":"UserFull"},{"id":341499403,"predicate":"contact","params":[{"name":"user_id","type":"long"},{"name":"mutual","type":"Bool"}],"type":"Contact"},{"id":3242081360,"predicate":"importedContact","params":[{"name":"user_id","type":"long"},{"name":"client_id","type":"long"}],"type":"ImportedContact"},{"id":383348795,"predicate":"contactStatus","params":[{"name":"user_id","type":"long"},{"name":"status","type":"UserStatus"}],"type":"ContactStatus"},{"id":3075189202,"predicate":"contacts.contactsNotModified","params":[],"type":"contacts.Contacts"},{"id":3941105218,"predicate":"contacts.contacts","params":[{"name":"contacts","type":"Vector"},{"name":"saved_count","type":"int"},{"name":"users","type":"Vector"}],"type":"contacts.Contacts"},{"id":2010127419,"predicate":"contacts.importedContacts","params":[{"name":"imported","type":"Vector"},{"name":"popular_invites","type":"Vector"},{"name":"retry_contacts","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":182326673,"predicate":"contacts.blocked","params":[{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":3781575060,"predicate":"contacts.blockedSlice","params":[{"name":"count","type":"int"},{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":364538944,"predicate":"messages.dialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":1910543603,"predicate":"messages.dialogsSlice","params":[{"name":"count","type":"int"},{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":4041467286,"predicate":"messages.dialogsNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Dialogs"},{"id":2356252295,"predicate":"messages.messages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":978610270,"predicate":"messages.messagesSlice","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"count","type":"int"},{"name":"next_rate","type":"flags.0?int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1682413576,"predicate":"messages.channelMessages","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"pts","type":"int"},{"name":"count","type":"int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1951620897,"predicate":"messages.messagesNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Messages"},{"id":1694474197,"predicate":"messages.chats","params":[{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":2631405892,"predicate":"messages.chatsSlice","params":[{"name":"count","type":"int"},{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":3856126364,"predicate":"messages.chatFull","params":[{"name":"full_chat","type":"ChatFull"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatFull"},{"id":3025955281,"predicate":"messages.affectedHistory","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"}],"type":"messages.AffectedHistory"},{"id":1474492012,"predicate":"inputMessagesFilterEmpty","params":[],"type":"MessagesFilter"},{"id":2517214492,"predicate":"inputMessagesFilterPhotos","params":[],"type":"MessagesFilter"},{"id":2680163941,"predicate":"inputMessagesFilterVideo","params":[],"type":"MessagesFilter"},{"id":1458172132,"predicate":"inputMessagesFilterPhotoVideo","params":[],"type":"MessagesFilter"},{"id":2665345416,"predicate":"inputMessagesFilterDocument","params":[],"type":"MessagesFilter"},{"id":2129714567,"predicate":"inputMessagesFilterUrl","params":[],"type":"MessagesFilter"},{"id":4291323271,"predicate":"inputMessagesFilterGif","params":[],"type":"MessagesFilter"},{"id":1358283666,"predicate":"inputMessagesFilterVoice","params":[],"type":"MessagesFilter"},{"id":928101534,"predicate":"inputMessagesFilterMusic","params":[],"type":"MessagesFilter"},{"id":975236280,"predicate":"inputMessagesFilterChatPhotos","params":[],"type":"MessagesFilter"},{"id":2160695144,"predicate":"inputMessagesFilterPhoneCalls","params":[{"name":"flags","type":"#"},{"name":"missed","type":"flags.0?true"}],"type":"MessagesFilter"},{"id":2054952868,"predicate":"inputMessagesFilterRoundVoice","params":[],"type":"MessagesFilter"},{"id":3041516115,"predicate":"inputMessagesFilterRoundVideo","params":[],"type":"MessagesFilter"},{"id":3254314650,"predicate":"inputMessagesFilterMyMentions","params":[],"type":"MessagesFilter"},{"id":3875695885,"predicate":"inputMessagesFilterGeo","params":[],"type":"MessagesFilter"},{"id":3764575107,"predicate":"inputMessagesFilterContacts","params":[],"type":"MessagesFilter"},{"id":464520273,"predicate":"inputMessagesFilterPinned","params":[],"type":"MessagesFilter"},{"id":522914557,"predicate":"updateNewMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1318109142,"predicate":"updateMessageID","params":[{"name":"id","type":"int"},{"name":"random_id","type":"long"}],"type":"Update"},{"id":2718806245,"predicate":"updateDeleteMessages","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":3223225727,"predicate":"updateUserTyping","params":[{"name":"user_id","type":"long"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":2202565360,"predicate":"updateChatUserTyping","params":[{"name":"chat_id","type":"long"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":125178264,"predicate":"updateChatParticipants","params":[{"name":"participants","type":"ChatParticipants"}],"type":"Update"},{"id":3854432478,"predicate":"updateUserStatus","params":[{"name":"user_id","type":"long"},{"name":"status","type":"UserStatus"}],"type":"Update"},{"id":3287417568,"predicate":"updateUserName","params":[{"name":"user_id","type":"long"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"username","type":"string"}],"type":"Update"},{"id":4062676620,"predicate":"updateUserPhoto","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"},{"name":"photo","type":"UserProfilePhoto"},{"name":"previous","type":"Bool"}],"type":"Update"},{"id":314359194,"predicate":"updateNewEncryptedMessage","params":[{"name":"message","type":"EncryptedMessage"},{"name":"qts","type":"int"}],"type":"Update"},{"id":386986326,"predicate":"updateEncryptedChatTyping","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":3030575245,"predicate":"updateEncryption","params":[{"name":"chat","type":"EncryptedChat"},{"name":"date","type":"int"}],"type":"Update"},{"id":956179895,"predicate":"updateEncryptedMessagesRead","params":[{"name":"chat_id","type":"int"},{"name":"max_date","type":"int"},{"name":"date","type":"int"}],"type":"Update"},{"id":1037718609,"predicate":"updateChatParticipantAdd","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":3811523959,"predicate":"updateChatParticipantDelete","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"version","type":"int"}],"type":"Update"},{"id":2388564083,"predicate":"updateDcOptions","params":[{"name":"dc_options","type":"Vector"}],"type":"Update"},{"id":3200411887,"predicate":"updateNotifySettings","params":[{"name":"peer","type":"NotifyPeer"},{"name":"notify_settings","type":"PeerNotifySettings"}],"type":"Update"},{"id":3957614617,"predicate":"updateServiceNotification","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"inbox_date","type":"flags.1?int"},{"name":"type","type":"string"},{"name":"message","type":"string"},{"name":"media","type":"MessageMedia"},{"name":"entities","type":"Vector"}],"type":"Update"},{"id":3996854058,"predicate":"updatePrivacy","params":[{"name":"key","type":"PrivacyKey"},{"name":"rules","type":"Vector"}],"type":"Update"},{"id":88680979,"predicate":"updateUserPhone","params":[{"name":"user_id","type":"long"},{"name":"phone","type":"string"}],"type":"Update"},{"id":2627162079,"predicate":"updateReadHistoryInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":791617983,"predicate":"updateReadHistoryOutbox","params":[{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":2139689491,"predicate":"updateWebPage","params":[{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1757493555,"predicate":"updateReadMessagesContents","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":277713951,"predicate":"updateChannelTooLong","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"pts","type":"flags.0?int"}],"type":"Update"},{"id":1666927625,"predicate":"updateChannel","params":[{"name":"channel_id","type":"long"}],"type":"Update"},{"id":1656358105,"predicate":"updateNewChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":2452516368,"predicate":"updateReadChannelInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"channel_id","type":"long"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"}],"type":"Update"},{"id":3274529554,"predicate":"updateDeleteChannelMessages","params":[{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":4062620680,"predicate":"updateChannelMessageViews","params":[{"name":"channel_id","type":"long"},{"name":"id","type":"int"},{"name":"views","type":"int"}],"type":"Update"},{"id":3620364706,"predicate":"updateChatParticipantAdmin","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"is_admin","type":"Bool"},{"name":"version","type":"int"}],"type":"Update"},{"id":1753886890,"predicate":"updateNewStickerSet","params":[{"name":"stickerset","type":"messages.StickerSet"}],"type":"Update"},{"id":196268545,"predicate":"updateStickerSetsOrder","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Update"},{"id":1135492588,"predicate":"updateStickerSets","params":[],"type":"Update"},{"id":2473931806,"predicate":"updateSavedGifs","params":[],"type":"Update"},{"id":1232025500,"predicate":"updateBotInlineQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"peer_type","type":"flags.1?InlineQueryPeerType"},{"name":"offset","type":"string"}],"type":"Update"},{"id":317794823,"predicate":"updateBotInlineSend","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"long"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"id","type":"string"},{"name":"msg_id","type":"flags.1?InputBotInlineMessageID"}],"type":"Update"},{"id":457133559,"predicate":"updateEditChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":3117401229,"predicate":"updateBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":3825430691,"predicate":"updateEditMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1763610706,"predicate":"updateInlineBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"msg_id","type":"InputBotInlineMessageID"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":3076495785,"predicate":"updateReadChannelOutbox","params":[{"name":"channel_id","type":"long"},{"name":"max_id","type":"int"}],"type":"Update"},{"id":3995842921,"predicate":"updateDraftMessage","params":[{"name":"peer","type":"Peer"},{"name":"draft","type":"DraftMessage"}],"type":"Update"},{"id":1461528386,"predicate":"updateReadFeaturedStickers","params":[],"type":"Update"},{"id":2588027936,"predicate":"updateRecentStickers","params":[],"type":"Update"},{"id":2720652550,"predicate":"updateConfig","params":[],"type":"Update"},{"id":861169551,"predicate":"updatePtsChanged","params":[],"type":"Update"},{"id":791390623,"predicate":"updateChannelWebPage","params":[{"name":"channel_id","type":"long"},{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1852826908,"predicate":"updateDialogPinned","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":4195302562,"predicate":"updatePinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.1?int"},{"name":"order","type":"flags.0?Vector"}],"type":"Update"},{"id":2199371971,"predicate":"updateBotWebhookJSON","params":[{"name":"data","type":"DataJSON"}],"type":"Update"},{"id":2610053286,"predicate":"updateBotWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"},{"name":"timeout","type":"int"}],"type":"Update"},{"id":3048144253,"predicate":"updateBotShippingQuery","params":[{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"payload","type":"bytes"},{"name":"shipping_address","type":"PostAddress"}],"type":"Update"},{"id":2359990934,"predicate":"updateBotPrecheckoutQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"Update"},{"id":2869914398,"predicate":"updatePhoneCall","params":[{"name":"phone_call","type":"PhoneCall"}],"type":"Update"},{"id":1180041828,"predicate":"updateLangPackTooLong","params":[{"name":"lang_code","type":"string"}],"type":"Update"},{"id":1442983757,"predicate":"updateLangPack","params":[{"name":"difference","type":"LangPackDifference"}],"type":"Update"},{"id":3843135853,"predicate":"updateFavedStickers","params":[],"type":"Update"},{"id":1153291573,"predicate":"updateChannelReadMessagesContents","params":[{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":1887741886,"predicate":"updateContactsReset","params":[],"type":"Update"},{"id":2990524056,"predicate":"updateChannelAvailableMessages","params":[{"name":"channel_id","type":"long"},{"name":"available_min_id","type":"int"}],"type":"Update"},{"id":3781450179,"predicate":"updateDialogUnreadMark","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":2896258427,"predicate":"updateMessagePoll","params":[{"name":"flags","type":"#"},{"name":"poll_id","type":"long"},{"name":"poll","type":"flags.0?Poll"},{"name":"results","type":"PollResults"}],"type":"Update"},{"id":1421875280,"predicate":"updateChatDefaultBannedRights","params":[{"name":"peer","type":"Peer"},{"name":"default_banned_rights","type":"ChatBannedRights"},{"name":"version","type":"int"}],"type":"Update"},{"id":422972864,"predicate":"updateFolderPeers","params":[{"name":"folder_peers","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1786671974,"predicate":"updatePeerSettings","params":[{"name":"peer","type":"Peer"},{"name":"settings","type":"PeerSettings"}],"type":"Update"},{"id":3031420848,"predicate":"updatePeerLocated","params":[{"name":"peers","type":"Vector"}],"type":"Update"},{"id":967122427,"predicate":"updateNewScheduledMessage","params":[{"name":"message","type":"Message"}],"type":"Update"},{"id":2424728814,"predicate":"updateDeleteScheduledMessages","params":[{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":2182544291,"predicate":"updateTheme","params":[{"name":"theme","type":"Theme"}],"type":"Update"},{"id":2267003193,"predicate":"updateGeoLiveViewed","params":[{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"}],"type":"Update"},{"id":1448076945,"predicate":"updateLoginToken","params":[],"type":"Update"},{"id":274961865,"predicate":"updateMessagePollVote","params":[{"name":"poll_id","type":"long"},{"name":"user_id","type":"long"},{"name":"options","type":"Vector"},{"name":"qts","type":"int"}],"type":"Update"},{"id":654302845,"predicate":"updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Update"},{"id":2782339333,"predicate":"updateDialogFilterOrder","params":[{"name":"order","type":"Vector"}],"type":"Update"},{"id":889491791,"predicate":"updateDialogFilters","params":[],"type":"Update"},{"id":643940105,"predicate":"updatePhoneCallSignalingData","params":[{"name":"phone_call_id","type":"long"},{"name":"data","type":"bytes"}],"type":"Update"},{"id":3533318132,"predicate":"updateChannelMessageForwards","params":[{"name":"channel_id","type":"long"},{"name":"id","type":"int"},{"name":"forwards","type":"int"}],"type":"Update"},{"id":3601962310,"predicate":"updateReadChannelDiscussionInbox","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"},{"name":"broadcast_id","type":"flags.0?long"},{"name":"broadcast_post","type":"flags.0?int"}],"type":"Update"},{"id":1767677564,"predicate":"updateReadChannelDiscussionOutbox","params":[{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Update"},{"id":610945826,"predicate":"updatePeerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"blocked","type":"Bool"}],"type":"Update"},{"id":2357774627,"predicate":"updateChannelUserTyping","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":3984976565,"predicate":"updatePinnedMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1538885128,"predicate":"updatePinnedChannelMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":4170869326,"predicate":"updateChat","params":[{"name":"chat_id","type":"long"}],"type":"Update"},{"id":4075543374,"predicate":"updateGroupCallParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"Update"},{"id":347227392,"predicate":"updateGroupCall","params":[{"name":"chat_id","type":"long"},{"name":"call","type":"GroupCall"}],"type":"Update"},{"id":3147544997,"predicate":"updatePeerHistoryTTL","params":[{"name":"flags","type":"#"},{"name":"peer","type":"Peer"},{"name":"ttl_period","type":"flags.0?int"}],"type":"Update"},{"id":3498534458,"predicate":"updateChatParticipant","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"long"},{"name":"date","type":"int"},{"name":"actor_id","type":"long"},{"name":"user_id","type":"long"},{"name":"prev_participant","type":"flags.0?ChatParticipant"},{"name":"new_participant","type":"flags.1?ChatParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":2556246715,"predicate":"updateChannelParticipant","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"date","type":"int"},{"name":"actor_id","type":"long"},{"name":"user_id","type":"long"},{"name":"prev_participant","type":"flags.0?ChannelParticipant"},{"name":"new_participant","type":"flags.1?ChannelParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":3297184329,"predicate":"updateBotStopped","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"},{"name":"stopped","type":"Bool"},{"name":"qts","type":"int"}],"type":"Update"},{"id":192428418,"predicate":"updateGroupCallConnection","params":[{"name":"flags","type":"#"},{"name":"presentation","type":"flags.0?true"},{"name":"params","type":"DataJSON"}],"type":"Update"},{"id":1299263278,"predicate":"updateBotCommands","params":[{"name":"peer","type":"Peer"},{"name":"bot_id","type":"long"},{"name":"commands","type":"Vector"}],"type":"Update"},{"id":2775329342,"predicate":"updates.state","params":[{"name":"pts","type":"int"},{"name":"qts","type":"int"},{"name":"date","type":"int"},{"name":"seq","type":"int"},{"name":"unread_count","type":"int"}],"type":"updates.State"},{"id":1567990072,"predicate":"updates.differenceEmpty","params":[{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"updates.Difference"},{"id":16030880,"predicate":"updates.difference","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"updates.Difference"},{"id":2835028353,"predicate":"updates.differenceSlice","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"intermediate_state","type":"updates.State"}],"type":"updates.Difference"},{"id":1258196845,"predicate":"updates.differenceTooLong","params":[{"name":"pts","type":"int"}],"type":"updates.Difference"},{"id":3809980286,"predicate":"updatesTooLong","params":[],"type":"Updates"},{"id":826001400,"predicate":"updateShortMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"user_id","type":"long"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":1299050149,"predicate":"updateShortChatMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"from_id","type":"long"},{"name":"chat_id","type":"long"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":2027216577,"predicate":"updateShort","params":[{"name":"update","type":"Update"},{"name":"date","type":"int"}],"type":"Updates"},{"id":1918567619,"predicate":"updatesCombined","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq_start","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":1957577280,"predicate":"updates","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":2417352961,"predicate":"updateShortSentMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":2378853029,"predicate":"photos.photos","params":[{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":352657236,"predicate":"photos.photosSlice","params":[{"name":"count","type":"int"},{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":539045032,"predicate":"photos.photo","params":[{"name":"photo","type":"Photo"},{"name":"users","type":"Vector"}],"type":"photos.Photo"},{"id":157948117,"predicate":"upload.file","params":[{"name":"type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.File"},{"id":4052539972,"predicate":"upload.fileCdnRedirect","params":[{"name":"dc_id","type":"int"},{"name":"file_token","type":"bytes"},{"name":"encryption_key","type":"bytes"},{"name":"encryption_iv","type":"bytes"},{"name":"file_hashes","type":"Vector"}],"type":"upload.File"},{"id":414687501,"predicate":"dcOption","params":[{"name":"flags","type":"#"},{"name":"ipv6","type":"flags.0?true"},{"name":"media_only","type":"flags.1?true"},{"name":"tcpo_only","type":"flags.2?true"},{"name":"cdn","type":"flags.3?true"},{"name":"static","type":"flags.4?true"},{"name":"id","type":"int"},{"name":"ip_address","type":"string"},{"name":"port","type":"int"},{"name":"secret","type":"flags.10?bytes"}],"type":"DcOption"},{"id":856375399,"predicate":"config","params":[{"name":"flags","type":"#"},{"name":"phonecalls_enabled","type":"flags.1?true"},{"name":"default_p2p_contacts","type":"flags.3?true"},{"name":"preload_featured_stickers","type":"flags.4?true"},{"name":"ignore_phone_entities","type":"flags.5?true"},{"name":"revoke_pm_inbox","type":"flags.6?true"},{"name":"blocked_mode","type":"flags.8?true"},{"name":"pfs_enabled","type":"flags.13?true"},{"name":"date","type":"int"},{"name":"expires","type":"int"},{"name":"test_mode","type":"Bool"},{"name":"this_dc","type":"int"},{"name":"dc_options","type":"Vector"},{"name":"dc_txt_domain_name","type":"string"},{"name":"chat_size_max","type":"int"},{"name":"megagroup_size_max","type":"int"},{"name":"forwarded_count_max","type":"int"},{"name":"online_update_period_ms","type":"int"},{"name":"offline_blur_timeout_ms","type":"int"},{"name":"offline_idle_timeout_ms","type":"int"},{"name":"online_cloud_timeout_ms","type":"int"},{"name":"notify_cloud_delay_ms","type":"int"},{"name":"notify_default_delay_ms","type":"int"},{"name":"push_chat_period_ms","type":"int"},{"name":"push_chat_limit","type":"int"},{"name":"saved_gifs_limit","type":"int"},{"name":"edit_time_limit","type":"int"},{"name":"revoke_time_limit","type":"int"},{"name":"revoke_pm_time_limit","type":"int"},{"name":"rating_e_decay","type":"int"},{"name":"stickers_recent_limit","type":"int"},{"name":"stickers_faved_limit","type":"int"},{"name":"channels_read_media_period","type":"int"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"pinned_dialogs_count_max","type":"int"},{"name":"pinned_infolder_count_max","type":"int"},{"name":"call_receive_timeout_ms","type":"int"},{"name":"call_ring_timeout_ms","type":"int"},{"name":"call_connect_timeout_ms","type":"int"},{"name":"call_packet_timeout_ms","type":"int"},{"name":"me_url_prefix","type":"string"},{"name":"autoupdate_url_prefix","type":"flags.7?string"},{"name":"gif_search_username","type":"flags.9?string"},{"name":"venue_search_username","type":"flags.10?string"},{"name":"img_search_username","type":"flags.11?string"},{"name":"static_maps_provider","type":"flags.12?string"},{"name":"caption_length_max","type":"int"},{"name":"message_length_max","type":"int"},{"name":"webfile_dc_id","type":"int"},{"name":"suggested_lang_code","type":"flags.2?string"},{"name":"lang_pack_version","type":"flags.2?int"},{"name":"base_lang_pack_version","type":"flags.2?int"}],"type":"Config"},{"id":2384074613,"predicate":"nearestDc","params":[{"name":"country","type":"string"},{"name":"this_dc","type":"int"},{"name":"nearest_dc","type":"int"}],"type":"NearestDc"},{"id":3434860080,"predicate":"help.appUpdate","params":[{"name":"flags","type":"#"},{"name":"can_not_skip","type":"flags.0?true"},{"name":"id","type":"int"},{"name":"version","type":"string"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"document","type":"flags.1?Document"},{"name":"url","type":"flags.2?string"},{"name":"sticker","type":"flags.3?Document"}],"type":"help.AppUpdate"},{"id":3294258486,"predicate":"help.noAppUpdate","params":[],"type":"help.AppUpdate"},{"id":415997816,"predicate":"help.inviteText","params":[{"name":"message","type":"string"}],"type":"help.InviteText"},{"id":2877210784,"predicate":"encryptedChatEmpty","params":[{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":1722964307,"predicate":"encryptedChatWaiting","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"}],"type":"EncryptedChat"},{"id":1223809356,"predicate":"encryptedChatRequested","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1643173063,"predicate":"encryptedChat","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":505183301,"predicate":"encryptedChatDiscarded","params":[{"name":"flags","type":"#"},{"name":"history_deleted","type":"flags.0?true"},{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":4047615457,"predicate":"inputEncryptedChat","params":[{"name":"chat_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedChat"},{"id":3256830334,"predicate":"encryptedFileEmpty","params":[],"type":"EncryptedFile"},{"id":1248893260,"predicate":"encryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"EncryptedFile"},{"id":406307684,"predicate":"inputEncryptedFileEmpty","params":[],"type":"InputEncryptedFile"},{"id":1690108678,"predicate":"inputEncryptedFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":1511503333,"predicate":"inputEncryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedFile"},{"id":767652808,"predicate":"inputEncryptedFileBigUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":3977822488,"predicate":"encryptedMessage","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"},{"name":"file","type":"EncryptedFile"}],"type":"EncryptedMessage"},{"id":594758406,"predicate":"encryptedMessageService","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"}],"type":"EncryptedMessage"},{"id":3236054581,"predicate":"messages.dhConfigNotModified","params":[{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":740433629,"predicate":"messages.dhConfig","params":[{"name":"g","type":"int"},{"name":"p","type":"bytes"},{"name":"version","type":"int"},{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":1443858741,"predicate":"messages.sentEncryptedMessage","params":[{"name":"date","type":"int"}],"type":"messages.SentEncryptedMessage"},{"id":2492727090,"predicate":"messages.sentEncryptedFile","params":[{"name":"date","type":"int"},{"name":"file","type":"EncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":1928391342,"predicate":"inputDocumentEmpty","params":[],"type":"InputDocument"},{"id":448771445,"predicate":"inputDocument","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputDocument"},{"id":922273905,"predicate":"documentEmpty","params":[{"name":"id","type":"long"}],"type":"Document"},{"id":512177195,"predicate":"document","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"mime_type","type":"string"},{"name":"size","type":"int"},{"name":"thumbs","type":"flags.0?Vector"},{"name":"video_thumbs","type":"flags.1?Vector"},{"name":"dc_id","type":"int"},{"name":"attributes","type":"Vector"}],"type":"Document"},{"id":398898678,"predicate":"help.support","params":[{"name":"phone_number","type":"string"},{"name":"user","type":"User"}],"type":"help.Support"},{"id":2681474008,"predicate":"notifyPeer","params":[{"name":"peer","type":"Peer"}],"type":"NotifyPeer"},{"id":3033021260,"predicate":"notifyUsers","params":[],"type":"NotifyPeer"},{"id":3221737155,"predicate":"notifyChats","params":[],"type":"NotifyPeer"},{"id":3591563503,"predicate":"notifyBroadcasts","params":[],"type":"NotifyPeer"},{"id":381645902,"predicate":"sendMessageTypingAction","params":[],"type":"SendMessageAction"},{"id":4250847477,"predicate":"sendMessageCancelAction","params":[],"type":"SendMessageAction"},{"id":2710034031,"predicate":"sendMessageRecordVideoAction","params":[],"type":"SendMessageAction"},{"id":3916839660,"predicate":"sendMessageUploadVideoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":3576656887,"predicate":"sendMessageRecordAudioAction","params":[],"type":"SendMessageAction"},{"id":4082227115,"predicate":"sendMessageUploadAudioAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":3520285222,"predicate":"sendMessageUploadPhotoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":2852968932,"predicate":"sendMessageUploadDocumentAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":393186209,"predicate":"sendMessageGeoLocationAction","params":[],"type":"SendMessageAction"},{"id":1653390447,"predicate":"sendMessageChooseContactAction","params":[],"type":"SendMessageAction"},{"id":3714748232,"predicate":"sendMessageGamePlayAction","params":[],"type":"SendMessageAction"},{"id":2297593788,"predicate":"sendMessageRecordRoundAction","params":[],"type":"SendMessageAction"},{"id":608050278,"predicate":"sendMessageUploadRoundAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":3643548293,"predicate":"speakingInGroupCallAction","params":[],"type":"SendMessageAction"},{"id":3688534598,"predicate":"sendMessageHistoryImportAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":2958739121,"predicate":"sendMessageChooseStickerAction","params":[],"type":"SendMessageAction"},{"id":1781674934,"predicate":"sendMessageEmojiInteraction","params":[{"name":"emoticon","type":"string"},{"name":"interaction","type":"DataJSON"}],"type":"SendMessageAction"},{"id":3060109358,"predicate":"sendMessageEmojiInteractionSeen","params":[{"name":"emoticon","type":"string"}],"type":"SendMessageAction"},{"id":3004386717,"predicate":"contacts.found","params":[{"name":"my_results","type":"Vector"},{"name":"results","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Found"},{"id":1335282456,"predicate":"inputPrivacyKeyStatusTimestamp","params":[],"type":"InputPrivacyKey"},{"id":3187344422,"predicate":"inputPrivacyKeyChatInvite","params":[],"type":"InputPrivacyKey"},{"id":4206550111,"predicate":"inputPrivacyKeyPhoneCall","params":[],"type":"InputPrivacyKey"},{"id":3684593874,"predicate":"inputPrivacyKeyPhoneP2P","params":[],"type":"InputPrivacyKey"},{"id":2765966344,"predicate":"inputPrivacyKeyForwards","params":[],"type":"InputPrivacyKey"},{"id":1461304012,"predicate":"inputPrivacyKeyProfilePhoto","params":[],"type":"InputPrivacyKey"},{"id":55761658,"predicate":"inputPrivacyKeyPhoneNumber","params":[],"type":"InputPrivacyKey"},{"id":3508640733,"predicate":"inputPrivacyKeyAddedByPhone","params":[],"type":"InputPrivacyKey"},{"id":3157175088,"predicate":"privacyKeyStatusTimestamp","params":[],"type":"PrivacyKey"},{"id":1343122938,"predicate":"privacyKeyChatInvite","params":[],"type":"PrivacyKey"},{"id":1030105979,"predicate":"privacyKeyPhoneCall","params":[],"type":"PrivacyKey"},{"id":961092808,"predicate":"privacyKeyPhoneP2P","params":[],"type":"PrivacyKey"},{"id":1777096355,"predicate":"privacyKeyForwards","params":[],"type":"PrivacyKey"},{"id":2517966829,"predicate":"privacyKeyProfilePhoto","params":[],"type":"PrivacyKey"},{"id":3516589165,"predicate":"privacyKeyPhoneNumber","params":[],"type":"PrivacyKey"},{"id":1124062251,"predicate":"privacyKeyAddedByPhone","params":[],"type":"PrivacyKey"},{"id":218751099,"predicate":"inputPrivacyValueAllowContacts","params":[],"type":"InputPrivacyRule"},{"id":407582158,"predicate":"inputPrivacyValueAllowAll","params":[],"type":"InputPrivacyRule"},{"id":320652927,"predicate":"inputPrivacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":195371015,"predicate":"inputPrivacyValueDisallowContacts","params":[],"type":"InputPrivacyRule"},{"id":3597362889,"predicate":"inputPrivacyValueDisallowAll","params":[],"type":"InputPrivacyRule"},{"id":2417034343,"predicate":"inputPrivacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":2215004623,"predicate":"inputPrivacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":3914272646,"predicate":"inputPrivacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":4294843308,"predicate":"privacyValueAllowContacts","params":[],"type":"PrivacyRule"},{"id":1698855810,"predicate":"privacyValueAllowAll","params":[],"type":"PrivacyRule"},{"id":3096469426,"predicate":"privacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":4169726490,"predicate":"privacyValueDisallowContacts","params":[],"type":"PrivacyRule"},{"id":2339628899,"predicate":"privacyValueDisallowAll","params":[],"type":"PrivacyRule"},{"id":3831632193,"predicate":"privacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":1796427406,"predicate":"privacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":1103656293,"predicate":"privacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":1352683077,"predicate":"account.privacyRules","params":[{"name":"rules","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.PrivacyRules"},{"id":3100684255,"predicate":"accountDaysTTL","params":[{"name":"days","type":"int"}],"type":"AccountDaysTTL"},{"id":1815593308,"predicate":"documentAttributeImageSize","params":[{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":297109817,"predicate":"documentAttributeAnimated","params":[],"type":"DocumentAttribute"},{"id":1662637586,"predicate":"documentAttributeSticker","params":[{"name":"flags","type":"#"},{"name":"mask","type":"flags.1?true"},{"name":"alt","type":"string"},{"name":"stickerset","type":"InputStickerSet"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"DocumentAttribute"},{"id":250621158,"predicate":"documentAttributeVideo","params":[{"name":"flags","type":"#"},{"name":"round_message","type":"flags.0?true"},{"name":"supports_streaming","type":"flags.1?true"},{"name":"duration","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":2555574726,"predicate":"documentAttributeAudio","params":[{"name":"flags","type":"#"},{"name":"voice","type":"flags.10?true"},{"name":"duration","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"performer","type":"flags.1?string"},{"name":"waveform","type":"flags.2?bytes"}],"type":"DocumentAttribute"},{"id":358154344,"predicate":"documentAttributeFilename","params":[{"name":"file_name","type":"string"}],"type":"DocumentAttribute"},{"id":2550256375,"predicate":"documentAttributeHasStickers","params":[],"type":"DocumentAttribute"},{"id":4050950690,"predicate":"messages.stickersNotModified","params":[],"type":"messages.Stickers"},{"id":816245886,"predicate":"messages.stickers","params":[{"name":"hash","type":"long"},{"name":"stickers","type":"Vector"}],"type":"messages.Stickers"},{"id":313694676,"predicate":"stickerPack","params":[{"name":"emoticon","type":"string"},{"name":"documents","type":"Vector"}],"type":"StickerPack"},{"id":3898999491,"predicate":"messages.allStickersNotModified","params":[],"type":"messages.AllStickers"},{"id":3451637435,"predicate":"messages.allStickers","params":[{"name":"hash","type":"long"},{"name":"sets","type":"Vector"}],"type":"messages.AllStickers"},{"id":2228326789,"predicate":"messages.affectedMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"messages.AffectedMessages"},{"id":3943987176,"predicate":"webPageEmpty","params":[{"name":"id","type":"long"}],"type":"WebPage"},{"id":3313949212,"predicate":"webPagePending","params":[{"name":"id","type":"long"},{"name":"date","type":"int"}],"type":"WebPage"},{"id":3902555570,"predicate":"webPage","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"url","type":"string"},{"name":"display_url","type":"string"},{"name":"hash","type":"int"},{"name":"type","type":"flags.0?string"},{"name":"site_name","type":"flags.1?string"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"photo","type":"flags.4?Photo"},{"name":"embed_url","type":"flags.5?string"},{"name":"embed_type","type":"flags.5?string"},{"name":"embed_width","type":"flags.6?int"},{"name":"embed_height","type":"flags.6?int"},{"name":"duration","type":"flags.7?int"},{"name":"author","type":"flags.8?string"},{"name":"document","type":"flags.9?Document"},{"name":"cached_page","type":"flags.10?Page"},{"name":"attributes","type":"flags.12?Vector"}],"type":"WebPage"},{"id":1930545681,"predicate":"webPageNotModified","params":[{"name":"flags","type":"#"},{"name":"cached_page_views","type":"flags.0?int"}],"type":"WebPage"},{"id":2902578717,"predicate":"authorization","params":[{"name":"flags","type":"#"},{"name":"current","type":"flags.0?true"},{"name":"official_app","type":"flags.1?true"},{"name":"password_pending","type":"flags.2?true"},{"name":"hash","type":"long"},{"name":"device_model","type":"string"},{"name":"platform","type":"string"},{"name":"system_version","type":"string"},{"name":"api_id","type":"int"},{"name":"app_name","type":"string"},{"name":"app_version","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"country","type":"string"},{"name":"region","type":"string"}],"type":"Authorization"},{"id":307276766,"predicate":"account.authorizations","params":[{"name":"authorizations","type":"Vector"}],"type":"account.Authorizations"},{"id":408623183,"predicate":"account.password","params":[{"name":"flags","type":"#"},{"name":"has_recovery","type":"flags.0?true"},{"name":"has_secure_values","type":"flags.1?true"},{"name":"has_password","type":"flags.2?true"},{"name":"current_algo","type":"flags.2?PasswordKdfAlgo"},{"name":"srp_B","type":"flags.2?bytes"},{"name":"srp_id","type":"flags.2?long"},{"name":"hint","type":"flags.3?string"},{"name":"email_unconfirmed_pattern","type":"flags.4?string"},{"name":"new_algo","type":"PasswordKdfAlgo"},{"name":"new_secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_random","type":"bytes"},{"name":"pending_reset_date","type":"flags.5?int"}],"type":"account.Password"},{"id":2589733861,"predicate":"account.passwordSettings","params":[{"name":"flags","type":"#"},{"name":"email","type":"flags.0?string"},{"name":"secure_settings","type":"flags.1?SecureSecretSettings"}],"type":"account.PasswordSettings"},{"id":3258394569,"predicate":"account.passwordInputSettings","params":[{"name":"flags","type":"#"},{"name":"new_algo","type":"flags.0?PasswordKdfAlgo"},{"name":"new_password_hash","type":"flags.0?bytes"},{"name":"hint","type":"flags.0?string"},{"name":"email","type":"flags.1?string"},{"name":"new_secure_settings","type":"flags.2?SecureSecretSettings"}],"type":"account.PasswordInputSettings"},{"id":326715557,"predicate":"auth.passwordRecovery","params":[{"name":"email_pattern","type":"string"}],"type":"auth.PasswordRecovery"},{"id":2743383929,"predicate":"receivedNotifyMessage","params":[{"name":"id","type":"int"},{"name":"flags","type":"int"}],"type":"ReceivedNotifyMessage"},{"id":2978022888,"predicate":"chatInviteExported","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.0?true"},{"name":"permanent","type":"flags.5?true"},{"name":"link","type":"string"},{"name":"admin_id","type":"long"},{"name":"date","type":"int"},{"name":"start_date","type":"flags.4?int"},{"name":"expire_date","type":"flags.1?int"},{"name":"usage_limit","type":"flags.2?int"},{"name":"usage","type":"flags.3?int"}],"type":"ExportedChatInvite"},{"id":1516793212,"predicate":"chatInviteAlready","params":[{"name":"chat","type":"Chat"}],"type":"ChatInvite"},{"id":3754096014,"predicate":"chatInvite","params":[{"name":"flags","type":"#"},{"name":"channel","type":"flags.0?true"},{"name":"broadcast","type":"flags.1?true"},{"name":"public","type":"flags.2?true"},{"name":"megagroup","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"photo","type":"Photo"},{"name":"participants_count","type":"int"},{"name":"participants","type":"flags.4?Vector"}],"type":"ChatInvite"},{"id":1634294960,"predicate":"chatInvitePeek","params":[{"name":"chat","type":"Chat"},{"name":"expires","type":"int"}],"type":"ChatInvite"},{"id":4290128789,"predicate":"inputStickerSetEmpty","params":[],"type":"InputStickerSet"},{"id":2649203305,"predicate":"inputStickerSetID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputStickerSet"},{"id":2250033312,"predicate":"inputStickerSetShortName","params":[{"name":"short_name","type":"string"}],"type":"InputStickerSet"},{"id":42402760,"predicate":"inputStickerSetAnimatedEmoji","params":[],"type":"InputStickerSet"},{"id":3867103758,"predicate":"inputStickerSetDice","params":[{"name":"emoticon","type":"string"}],"type":"InputStickerSet"},{"id":3621724538,"predicate":"stickerSet","params":[{"name":"flags","type":"#"},{"name":"archived","type":"flags.1?true"},{"name":"official","type":"flags.2?true"},{"name":"masks","type":"flags.3?true"},{"name":"animated","type":"flags.5?true"},{"name":"installed_date","type":"flags.0?int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumbs","type":"flags.4?Vector"},{"name":"thumb_dc_id","type":"flags.4?int"},{"name":"thumb_version","type":"flags.4?int"},{"name":"count","type":"int"},{"name":"hash","type":"int"}],"type":"StickerSet"},{"id":3054118054,"predicate":"messages.stickerSet","params":[{"name":"set","type":"StickerSet"},{"name":"packs","type":"Vector"},{"name":"documents","type":"Vector"}],"type":"messages.StickerSet"},{"id":3262826695,"predicate":"botCommand","params":[{"name":"command","type":"string"},{"name":"description","type":"string"}],"type":"BotCommand"},{"id":460632885,"predicate":"botInfo","params":[{"name":"user_id","type":"long"},{"name":"description","type":"string"},{"name":"commands","type":"Vector"}],"type":"BotInfo"},{"id":2734311552,"predicate":"keyboardButton","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":629866245,"predicate":"keyboardButtonUrl","params":[{"name":"text","type":"string"},{"name":"url","type":"string"}],"type":"KeyboardButton"},{"id":901503851,"predicate":"keyboardButtonCallback","params":[{"name":"flags","type":"#"},{"name":"requires_password","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"data","type":"bytes"}],"type":"KeyboardButton"},{"id":2976541737,"predicate":"keyboardButtonRequestPhone","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":4235815743,"predicate":"keyboardButtonRequestGeoLocation","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":90744648,"predicate":"keyboardButtonSwitchInline","params":[{"name":"flags","type":"#"},{"name":"same_peer","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"query","type":"string"}],"type":"KeyboardButton"},{"id":1358175439,"predicate":"keyboardButtonGame","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":2950250427,"predicate":"keyboardButtonBuy","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":280464681,"predicate":"keyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.0?string"},{"name":"url","type":"string"},{"name":"button_id","type":"int"}],"type":"KeyboardButton"},{"id":3492708308,"predicate":"inputKeyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.1?string"},{"name":"url","type":"string"},{"name":"bot","type":"InputUser"}],"type":"KeyboardButton"},{"id":3150401885,"predicate":"keyboardButtonRequestPoll","params":[{"name":"flags","type":"#"},{"name":"quiz","type":"flags.0?Bool"},{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":2002815875,"predicate":"keyboardButtonRow","params":[{"name":"buttons","type":"Vector"}],"type":"KeyboardButtonRow"},{"id":2688441221,"predicate":"replyKeyboardHide","params":[{"name":"flags","type":"#"},{"name":"selective","type":"flags.2?true"}],"type":"ReplyMarkup"},{"id":2259946248,"predicate":"replyKeyboardForceReply","params":[{"name":"flags","type":"#"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":2245892561,"predicate":"replyKeyboardMarkup","params":[{"name":"flags","type":"#"},{"name":"resize","type":"flags.0?true"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"rows","type":"Vector"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":1218642516,"predicate":"replyInlineMarkup","params":[{"name":"rows","type":"Vector"}],"type":"ReplyMarkup"},{"id":3146955413,"predicate":"messageEntityUnknown","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":4194588573,"predicate":"messageEntityMention","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1868782349,"predicate":"messageEntityHashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1827637959,"predicate":"messageEntityBotCommand","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1859134776,"predicate":"messageEntityUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1692693954,"predicate":"messageEntityEmail","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":3177253833,"predicate":"messageEntityBold","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":2188348256,"predicate":"messageEntityItalic","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":681706865,"predicate":"messageEntityCode","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1938967520,"predicate":"messageEntityPre","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"language","type":"string"}],"type":"MessageEntity"},{"id":1990644519,"predicate":"messageEntityTextUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"url","type":"string"}],"type":"MessageEntity"},{"id":3699052864,"predicate":"messageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"long"}],"type":"MessageEntity"},{"id":546203849,"predicate":"inputMessageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"MessageEntity"},{"id":2607407947,"predicate":"messageEntityPhone","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1280209983,"predicate":"messageEntityCashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":2622389899,"predicate":"messageEntityUnderline","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":3204879316,"predicate":"messageEntityStrike","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":34469328,"predicate":"messageEntityBlockquote","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1981704948,"predicate":"messageEntityBankCard","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":4002160262,"predicate":"inputChannelEmpty","params":[],"type":"InputChannel"},{"id":4082822184,"predicate":"inputChannel","params":[{"name":"channel_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputChannel"},{"id":1536380829,"predicate":"inputChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"long"}],"type":"InputChannel"},{"id":2131196633,"predicate":"contacts.resolvedPeer","params":[{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ResolvedPeer"},{"id":182649427,"predicate":"messageRange","params":[{"name":"min_id","type":"int"},{"name":"max_id","type":"int"}],"type":"MessageRange"},{"id":1041346555,"predicate":"updates.channelDifferenceEmpty","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"}],"type":"updates.ChannelDifference"},{"id":2763835134,"predicate":"updates.channelDifferenceTooLong","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"timeout","type":"flags.1?int"},{"name":"dialog","type":"Dialog"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":543450958,"predicate":"updates.channelDifference","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"},{"name":"new_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":2496933607,"predicate":"channelMessagesFilterEmpty","params":[],"type":"ChannelMessagesFilter"},{"id":3447183703,"predicate":"channelMessagesFilter","params":[{"name":"flags","type":"#"},{"name":"exclude_new_messages","type":"flags.1?true"},{"name":"ranges","type":"Vector"}],"type":"ChannelMessagesFilter"},{"id":3222013888,"predicate":"channelParticipant","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":682146919,"predicate":"channelParticipantSelf","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":803602899,"predicate":"channelParticipantCreator","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"long"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.0?string"}],"type":"ChannelParticipant"},{"id":885242707,"predicate":"channelParticipantAdmin","params":[{"name":"flags","type":"#"},{"name":"can_edit","type":"flags.0?true"},{"name":"self","type":"flags.1?true"},{"name":"user_id","type":"long"},{"name":"inviter_id","type":"flags.1?long"},{"name":"promoted_by","type":"long"},{"name":"date","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.2?string"}],"type":"ChannelParticipant"},{"id":1844969806,"predicate":"channelParticipantBanned","params":[{"name":"flags","type":"#"},{"name":"left","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"kicked_by","type":"long"},{"name":"date","type":"int"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"ChannelParticipant"},{"id":453242886,"predicate":"channelParticipantLeft","params":[{"name":"peer","type":"Peer"}],"type":"ChannelParticipant"},{"id":3728686201,"predicate":"channelParticipantsRecent","params":[],"type":"ChannelParticipantsFilter"},{"id":3026225513,"predicate":"channelParticipantsAdmins","params":[],"type":"ChannelParticipantsFilter"},{"id":2746567045,"predicate":"channelParticipantsKicked","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":2966521435,"predicate":"channelParticipantsBots","params":[],"type":"ChannelParticipantsFilter"},{"id":338142689,"predicate":"channelParticipantsBanned","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":106343499,"predicate":"channelParticipantsSearch","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":3144345741,"predicate":"channelParticipantsContacts","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":3763035371,"predicate":"channelParticipantsMentions","params":[{"name":"flags","type":"#"},{"name":"q","type":"flags.0?string"},{"name":"top_msg_id","type":"flags.1?int"}],"type":"ChannelParticipantsFilter"},{"id":2595290799,"predicate":"channels.channelParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipants"},{"id":4028055529,"predicate":"channels.channelParticipantsNotModified","params":[],"type":"channels.ChannelParticipants"},{"id":3753378583,"predicate":"channels.channelParticipant","params":[{"name":"participant","type":"ChannelParticipant"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipant"},{"id":2013922064,"predicate":"help.termsOfService","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"id","type":"DataJSON"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"min_age_confirm","type":"flags.1?int"}],"type":"help.TermsOfService"},{"id":3892468898,"predicate":"messages.savedGifsNotModified","params":[],"type":"messages.SavedGifs"},{"id":2225089037,"predicate":"messages.savedGifs","params":[{"name":"hash","type":"long"},{"name":"gifs","type":"Vector"}],"type":"messages.SavedGifs"},{"id":864077702,"predicate":"inputBotInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1036876423,"predicate":"inputBotInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":2526190213,"predicate":"inputBotInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1098628881,"predicate":"inputBotInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":2800599037,"predicate":"inputBotInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1262639204,"predicate":"inputBotInlineMessageGame","params":[{"name":"flags","type":"#"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":3622273573,"predicate":"inputBotInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":2294256409,"predicate":"inputBotInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?InputWebDocument"},{"name":"content","type":"flags.5?InputWebDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":2832753831,"predicate":"inputBotInlineResultPhoto","params":[{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"InputPhoto"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":4294507972,"predicate":"inputBotInlineResultDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"document","type":"InputDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1336154098,"predicate":"inputBotInlineResultGame","params":[{"name":"id","type":"string"},{"name":"short_name","type":"string"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1984755728,"predicate":"botInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":2357159394,"predicate":"botInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":85477117,"predicate":"botInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":2324063644,"predicate":"botInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":416402882,"predicate":"botInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":894081801,"predicate":"botInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":295067450,"predicate":"botInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?WebDocument"},{"name":"content","type":"flags.5?WebDocument"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":400266251,"predicate":"botInlineMediaResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"flags.0?Photo"},{"name":"document","type":"flags.1?Document"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":2491197512,"predicate":"messages.botResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"query_id","type":"long"},{"name":"next_offset","type":"flags.1?string"},{"name":"switch_pm","type":"flags.2?InlineBotSwitchPM"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"users","type":"Vector"}],"type":"messages.BotResults"},{"id":1571494644,"predicate":"exportedMessageLink","params":[{"name":"link","type":"string"},{"name":"html","type":"string"}],"type":"ExportedMessageLink"},{"id":1601666510,"predicate":"messageFwdHeader","params":[{"name":"flags","type":"#"},{"name":"imported","type":"flags.7?true"},{"name":"from_id","type":"flags.0?Peer"},{"name":"from_name","type":"flags.5?string"},{"name":"date","type":"int"},{"name":"channel_post","type":"flags.2?int"},{"name":"post_author","type":"flags.3?string"},{"name":"saved_from_peer","type":"flags.4?Peer"},{"name":"saved_from_msg_id","type":"flags.4?int"},{"name":"psa_type","type":"flags.6?string"}],"type":"MessageFwdHeader"},{"id":1923290508,"predicate":"auth.codeTypeSms","params":[],"type":"auth.CodeType"},{"id":1948046307,"predicate":"auth.codeTypeCall","params":[],"type":"auth.CodeType"},{"id":577556219,"predicate":"auth.codeTypeFlashCall","params":[],"type":"auth.CodeType"},{"id":1035688326,"predicate":"auth.sentCodeTypeApp","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":3221273506,"predicate":"auth.sentCodeTypeSms","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":1398007207,"predicate":"auth.sentCodeTypeCall","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":2869151449,"predicate":"auth.sentCodeTypeFlashCall","params":[{"name":"pattern","type":"string"}],"type":"auth.SentCodeType"},{"id":911761060,"predicate":"messages.botCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"has_url","type":"flags.3?true"},{"name":"native_ui","type":"flags.4?true"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"messages.BotCallbackAnswer"},{"id":649453030,"predicate":"messages.messageEditData","params":[{"name":"flags","type":"#"},{"name":"caption","type":"flags.0?true"}],"type":"messages.MessageEditData"},{"id":2299280777,"predicate":"inputBotInlineMessageID","params":[{"name":"dc_id","type":"int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":3067680215,"predicate":"inputBotInlineMessageID64","params":[{"name":"dc_id","type":"int"},{"name":"owner_id","type":"long"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":1008755359,"predicate":"inlineBotSwitchPM","params":[{"name":"text","type":"string"},{"name":"start_param","type":"string"}],"type":"InlineBotSwitchPM"},{"id":863093588,"predicate":"messages.peerDialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"messages.PeerDialogs"},{"id":3989684315,"predicate":"topPeer","params":[{"name":"peer","type":"Peer"},{"name":"rating","type":"double"}],"type":"TopPeer"},{"id":2875595611,"predicate":"topPeerCategoryBotsPM","params":[],"type":"TopPeerCategory"},{"id":344356834,"predicate":"topPeerCategoryBotsInline","params":[],"type":"TopPeerCategory"},{"id":104314861,"predicate":"topPeerCategoryCorrespondents","params":[],"type":"TopPeerCategory"},{"id":3172442442,"predicate":"topPeerCategoryGroups","params":[],"type":"TopPeerCategory"},{"id":371037736,"predicate":"topPeerCategoryChannels","params":[],"type":"TopPeerCategory"},{"id":511092620,"predicate":"topPeerCategoryPhoneCalls","params":[],"type":"TopPeerCategory"},{"id":2822794409,"predicate":"topPeerCategoryForwardUsers","params":[],"type":"TopPeerCategory"},{"id":4226728176,"predicate":"topPeerCategoryForwardChats","params":[],"type":"TopPeerCategory"},{"id":4219683473,"predicate":"topPeerCategoryPeers","params":[{"name":"category","type":"TopPeerCategory"},{"name":"count","type":"int"},{"name":"peers","type":"Vector"}],"type":"TopPeerCategoryPeers"},{"id":3727060725,"predicate":"contacts.topPeersNotModified","params":[],"type":"contacts.TopPeers"},{"id":1891070632,"predicate":"contacts.topPeers","params":[{"name":"categories","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.TopPeers"},{"id":3039597469,"predicate":"contacts.topPeersDisabled","params":[],"type":"contacts.TopPeers"},{"id":453805082,"predicate":"draftMessageEmpty","params":[{"name":"flags","type":"#"},{"name":"date","type":"flags.0?int"}],"type":"DraftMessage"},{"id":4253970719,"predicate":"draftMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"},{"name":"date","type":"int"}],"type":"DraftMessage"},{"id":3336309862,"predicate":"messages.featuredStickersNotModified","params":[{"name":"count","type":"int"}],"type":"messages.FeaturedStickers"},{"id":2227184400,"predicate":"messages.featuredStickers","params":[{"name":"hash","type":"long"},{"name":"count","type":"int"},{"name":"sets","type":"Vector"},{"name":"unread","type":"Vector"}],"type":"messages.FeaturedStickers"},{"id":186120336,"predicate":"messages.recentStickersNotModified","params":[],"type":"messages.RecentStickers"},{"id":2295561302,"predicate":"messages.recentStickers","params":[{"name":"hash","type":"long"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"},{"name":"dates","type":"Vector"}],"type":"messages.RecentStickers"},{"id":1338747336,"predicate":"messages.archivedStickers","params":[{"name":"count","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.ArchivedStickers"},{"id":946083368,"predicate":"messages.stickerSetInstallResultSuccess","params":[],"type":"messages.StickerSetInstallResult"},{"id":904138920,"predicate":"messages.stickerSetInstallResultArchive","params":[{"name":"sets","type":"Vector"}],"type":"messages.StickerSetInstallResult"},{"id":1678812626,"predicate":"stickerSetCovered","params":[{"name":"set","type":"StickerSet"},{"name":"cover","type":"Document"}],"type":"StickerSetCovered"},{"id":872932635,"predicate":"stickerSetMultiCovered","params":[{"name":"set","type":"StickerSet"},{"name":"covers","type":"Vector"}],"type":"StickerSetCovered"},{"id":2933316530,"predicate":"maskCoords","params":[{"name":"n","type":"int"},{"name":"x","type":"double"},{"name":"y","type":"double"},{"name":"zoom","type":"double"}],"type":"MaskCoords"},{"id":1251549527,"predicate":"inputStickeredMediaPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputStickeredMedia"},{"id":70813275,"predicate":"inputStickeredMediaDocument","params":[{"name":"id","type":"InputDocument"}],"type":"InputStickeredMedia"},{"id":3187238203,"predicate":"game","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"short_name","type":"string"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"Photo"},{"name":"document","type":"flags.0?Document"}],"type":"Game"},{"id":53231223,"predicate":"inputGameID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGame"},{"id":3274827786,"predicate":"inputGameShortName","params":[{"name":"bot_id","type":"InputUser"},{"name":"short_name","type":"string"}],"type":"InputGame"},{"id":1940093419,"predicate":"highScore","params":[{"name":"pos","type":"int"},{"name":"user_id","type":"long"},{"name":"score","type":"int"}],"type":"HighScore"},{"id":2587622809,"predicate":"messages.highScores","params":[{"name":"scores","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.HighScores"},{"id":3695018575,"predicate":"textEmpty","params":[],"type":"RichText"},{"id":1950782688,"predicate":"textPlain","params":[{"name":"text","type":"string"}],"type":"RichText"},{"id":1730456516,"predicate":"textBold","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":3641877916,"predicate":"textItalic","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":3240501956,"predicate":"textUnderline","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":2616769429,"predicate":"textStrike","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1816074681,"predicate":"textFixed","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1009288385,"predicate":"textUrl","params":[{"name":"text","type":"RichText"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"}],"type":"RichText"},{"id":3730443734,"predicate":"textEmail","params":[{"name":"text","type":"RichText"},{"name":"email","type":"string"}],"type":"RichText"},{"id":2120376535,"predicate":"textConcat","params":[{"name":"texts","type":"Vector"}],"type":"RichText"},{"id":3983181060,"predicate":"textSubscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":3355139585,"predicate":"textSuperscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":55281185,"predicate":"textMarked","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":483104362,"predicate":"textPhone","params":[{"name":"text","type":"RichText"},{"name":"phone","type":"string"}],"type":"RichText"},{"id":136105807,"predicate":"textImage","params":[{"name":"document_id","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"RichText"},{"id":894777186,"predicate":"textAnchor","params":[{"name":"text","type":"RichText"},{"name":"name","type":"string"}],"type":"RichText"},{"id":324435594,"predicate":"pageBlockUnsupported","params":[],"type":"PageBlock"},{"id":1890305021,"predicate":"pageBlockTitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":2415565343,"predicate":"pageBlockSubtitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":3132089824,"predicate":"pageBlockAuthorDate","params":[{"name":"author","type":"RichText"},{"name":"published_date","type":"int"}],"type":"PageBlock"},{"id":3218105580,"predicate":"pageBlockHeader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":4046173921,"predicate":"pageBlockSubheader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":1182402406,"predicate":"pageBlockParagraph","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":3228621118,"predicate":"pageBlockPreformatted","params":[{"name":"text","type":"RichText"},{"name":"language","type":"string"}],"type":"PageBlock"},{"id":1216809369,"predicate":"pageBlockFooter","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":3676352904,"predicate":"pageBlockDivider","params":[],"type":"PageBlock"},{"id":3456972720,"predicate":"pageBlockAnchor","params":[{"name":"name","type":"string"}],"type":"PageBlock"},{"id":3840442385,"predicate":"pageBlockList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":641563686,"predicate":"pageBlockBlockquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":1329878739,"predicate":"pageBlockPullquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":391759200,"predicate":"pageBlockPhoto","params":[{"name":"flags","type":"#"},{"name":"photo_id","type":"long"},{"name":"caption","type":"PageCaption"},{"name":"url","type":"flags.0?string"},{"name":"webpage_id","type":"flags.0?long"}],"type":"PageBlock"},{"id":2089805750,"predicate":"pageBlockVideo","params":[{"name":"flags","type":"#"},{"name":"autoplay","type":"flags.0?true"},{"name":"loop","type":"flags.1?true"},{"name":"video_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":972174080,"predicate":"pageBlockCover","params":[{"name":"cover","type":"PageBlock"}],"type":"PageBlock"},{"id":2826014149,"predicate":"pageBlockEmbed","params":[{"name":"flags","type":"#"},{"name":"full_width","type":"flags.0?true"},{"name":"allow_scrolling","type":"flags.3?true"},{"name":"url","type":"flags.1?string"},{"name":"html","type":"flags.2?string"},{"name":"poster_photo_id","type":"flags.4?long"},{"name":"w","type":"flags.5?int"},{"name":"h","type":"flags.5?int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":4065961995,"predicate":"pageBlockEmbedPost","params":[{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"author_photo_id","type":"long"},{"name":"author","type":"string"},{"name":"date","type":"int"},{"name":"blocks","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1705048653,"predicate":"pageBlockCollage","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":52401552,"predicate":"pageBlockSlideshow","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":4011282869,"predicate":"pageBlockChannel","params":[{"name":"channel","type":"Chat"}],"type":"PageBlock"},{"id":2151899626,"predicate":"pageBlockAudio","params":[{"name":"audio_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":504660880,"predicate":"pageBlockKicker","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":3209554562,"predicate":"pageBlockTable","params":[{"name":"flags","type":"#"},{"name":"bordered","type":"flags.0?true"},{"name":"striped","type":"flags.1?true"},{"name":"title","type":"RichText"},{"name":"rows","type":"Vector"}],"type":"PageBlock"},{"id":2592793057,"predicate":"pageBlockOrderedList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":1987480557,"predicate":"pageBlockDetails","params":[{"name":"flags","type":"#"},{"name":"open","type":"flags.0?true"},{"name":"blocks","type":"Vector"},{"name":"title","type":"RichText"}],"type":"PageBlock"},{"id":370236054,"predicate":"pageBlockRelatedArticles","params":[{"name":"title","type":"RichText"},{"name":"articles","type":"Vector"}],"type":"PageBlock"},{"id":2756656886,"predicate":"pageBlockMap","params":[{"name":"geo","type":"GeoPoint"},{"name":"zoom","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":2246320897,"predicate":"phoneCallDiscardReasonMissed","params":[],"type":"PhoneCallDiscardReason"},{"id":3767910816,"predicate":"phoneCallDiscardReasonDisconnect","params":[],"type":"PhoneCallDiscardReason"},{"id":1471006352,"predicate":"phoneCallDiscardReasonHangup","params":[],"type":"PhoneCallDiscardReason"},{"id":4210550985,"predicate":"phoneCallDiscardReasonBusy","params":[],"type":"PhoneCallDiscardReason"},{"id":2104790276,"predicate":"dataJSON","params":[{"name":"data","type":"string"}],"type":"DataJSON"},{"id":3408489464,"predicate":"labeledPrice","params":[{"name":"label","type":"string"},{"name":"amount","type":"long"}],"type":"LabeledPrice"},{"id":215516896,"predicate":"invoice","params":[{"name":"flags","type":"#"},{"name":"test","type":"flags.0?true"},{"name":"name_requested","type":"flags.1?true"},{"name":"phone_requested","type":"flags.2?true"},{"name":"email_requested","type":"flags.3?true"},{"name":"shipping_address_requested","type":"flags.4?true"},{"name":"flexible","type":"flags.5?true"},{"name":"phone_to_provider","type":"flags.6?true"},{"name":"email_to_provider","type":"flags.7?true"},{"name":"currency","type":"string"},{"name":"prices","type":"Vector"},{"name":"max_tip_amount","type":"flags.8?long"},{"name":"suggested_tip_amounts","type":"flags.8?Vector"}],"type":"Invoice"},{"id":3926049406,"predicate":"paymentCharge","params":[{"name":"id","type":"string"},{"name":"provider_charge_id","type":"string"}],"type":"PaymentCharge"},{"id":512535275,"predicate":"postAddress","params":[{"name":"street_line1","type":"string"},{"name":"street_line2","type":"string"},{"name":"city","type":"string"},{"name":"state","type":"string"},{"name":"country_iso2","type":"string"},{"name":"post_code","type":"string"}],"type":"PostAddress"},{"id":2426158996,"predicate":"paymentRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"name","type":"flags.0?string"},{"name":"phone","type":"flags.1?string"},{"name":"email","type":"flags.2?string"},{"name":"shipping_address","type":"flags.3?PostAddress"}],"type":"PaymentRequestedInfo"},{"id":3452074527,"predicate":"paymentSavedCredentialsCard","params":[{"name":"id","type":"string"},{"name":"title","type":"string"}],"type":"PaymentSavedCredentials"},{"id":475467473,"predicate":"webDocument","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":4190682310,"predicate":"webDocumentNoProxy","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":2616017741,"predicate":"inputWebDocument","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"InputWebDocument"},{"id":3258570374,"predicate":"inputWebFileLocation","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"}],"type":"InputWebFileLocation"},{"id":2669814217,"predicate":"inputWebFileGeoPointLocation","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"access_hash","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"zoom","type":"int"},{"name":"scale","type":"int"}],"type":"InputWebFileLocation"},{"id":568808380,"predicate":"upload.webFile","params":[{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"file_type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.WebFile"},{"id":378828315,"predicate":"payments.paymentForm","params":[{"name":"flags","type":"#"},{"name":"can_save_credentials","type":"flags.2?true"},{"name":"password_missing","type":"flags.3?true"},{"name":"form_id","type":"long"},{"name":"bot_id","type":"long"},{"name":"invoice","type":"Invoice"},{"name":"provider_id","type":"long"},{"name":"url","type":"string"},{"name":"native_provider","type":"flags.4?string"},{"name":"native_params","type":"flags.4?DataJSON"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"},{"name":"saved_credentials","type":"flags.1?PaymentSavedCredentials"},{"name":"users","type":"Vector"}],"type":"payments.PaymentForm"},{"id":3510966403,"predicate":"payments.validatedRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"id","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"payments.ValidatedRequestedInfo"},{"id":1314881805,"predicate":"payments.paymentResult","params":[{"name":"updates","type":"Updates"}],"type":"payments.PaymentResult"},{"id":3628142905,"predicate":"payments.paymentVerificationNeeded","params":[{"name":"url","type":"string"}],"type":"payments.PaymentResult"},{"id":1891958275,"predicate":"payments.paymentReceipt","params":[{"name":"flags","type":"#"},{"name":"date","type":"int"},{"name":"bot_id","type":"long"},{"name":"provider_id","type":"long"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.2?WebDocument"},{"name":"invoice","type":"Invoice"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping","type":"flags.1?ShippingOption"},{"name":"tip_amount","type":"flags.3?long"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"credentials_title","type":"string"},{"name":"users","type":"Vector"}],"type":"payments.PaymentReceipt"},{"id":4220511292,"predicate":"payments.savedInfo","params":[{"name":"flags","type":"#"},{"name":"has_saved_credentials","type":"flags.1?true"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"}],"type":"payments.SavedInfo"},{"id":3238965967,"predicate":"inputPaymentCredentialsSaved","params":[{"name":"id","type":"string"},{"name":"tmp_password","type":"bytes"}],"type":"InputPaymentCredentials"},{"id":873977640,"predicate":"inputPaymentCredentials","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":178373535,"predicate":"inputPaymentCredentialsApplePay","params":[{"name":"payment_data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":2328045569,"predicate":"inputPaymentCredentialsGooglePay","params":[{"name":"payment_token","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":3680828724,"predicate":"account.tmpPassword","params":[{"name":"tmp_password","type":"bytes"},{"name":"valid_until","type":"int"}],"type":"account.TmpPassword"},{"id":3055631583,"predicate":"shippingOption","params":[{"name":"id","type":"string"},{"name":"title","type":"string"},{"name":"prices","type":"Vector"}],"type":"ShippingOption"},{"id":4288717974,"predicate":"inputStickerSetItem","params":[{"name":"flags","type":"#"},{"name":"document","type":"InputDocument"},{"name":"emoji","type":"string"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"InputStickerSetItem"},{"id":506920429,"predicate":"inputPhoneCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPhoneCall"},{"id":1399245077,"predicate":"phoneCallEmpty","params":[{"name":"id","type":"long"}],"type":"PhoneCall"},{"id":3307368215,"predicate":"phoneCallWaiting","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"receive_date","type":"flags.0?int"}],"type":"PhoneCall"},{"id":347139340,"predicate":"phoneCallRequested","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":912311057,"predicate":"phoneCallAccepted","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":2524937319,"predicate":"phoneCall","params":[{"name":"flags","type":"#"},{"name":"p2p_allowed","type":"flags.5?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"connections","type":"Vector"},{"name":"start_date","type":"int"}],"type":"PhoneCall"},{"id":1355435489,"predicate":"phoneCallDiscarded","params":[{"name":"flags","type":"#"},{"name":"need_rating","type":"flags.2?true"},{"name":"need_debug","type":"flags.3?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"PhoneCall"},{"id":2639009728,"predicate":"phoneConnection","params":[{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"peer_tag","type":"bytes"}],"type":"PhoneConnection"},{"id":1667228533,"predicate":"phoneConnectionWebrtc","params":[{"name":"flags","type":"#"},{"name":"turn","type":"flags.0?true"},{"name":"stun","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"username","type":"string"},{"name":"password","type":"string"}],"type":"PhoneConnection"},{"id":4236742600,"predicate":"phoneCallProtocol","params":[{"name":"flags","type":"#"},{"name":"udp_p2p","type":"flags.0?true"},{"name":"udp_reflector","type":"flags.1?true"},{"name":"min_layer","type":"int"},{"name":"max_layer","type":"int"},{"name":"library_versions","type":"Vector"}],"type":"PhoneCallProtocol"},{"id":3968000320,"predicate":"phone.phoneCall","params":[{"name":"phone_call","type":"PhoneCall"},{"name":"users","type":"Vector"}],"type":"phone.PhoneCall"},{"id":4004045934,"predicate":"upload.cdnFileReuploadNeeded","params":[{"name":"request_token","type":"bytes"}],"type":"upload.CdnFile"},{"id":2845821519,"predicate":"upload.cdnFile","params":[{"name":"bytes","type":"bytes"}],"type":"upload.CdnFile"},{"id":3380800186,"predicate":"cdnPublicKey","params":[{"name":"dc_id","type":"int"},{"name":"public_key","type":"string"}],"type":"CdnPublicKey"},{"id":1462101002,"predicate":"cdnConfig","params":[{"name":"public_keys","type":"Vector"}],"type":"CdnConfig"},{"id":3402727926,"predicate":"langPackString","params":[{"name":"key","type":"string"},{"name":"value","type":"string"}],"type":"LangPackString"},{"id":1816636575,"predicate":"langPackStringPluralized","params":[{"name":"flags","type":"#"},{"name":"key","type":"string"},{"name":"zero_value","type":"flags.0?string"},{"name":"one_value","type":"flags.1?string"},{"name":"two_value","type":"flags.2?string"},{"name":"few_value","type":"flags.3?string"},{"name":"many_value","type":"flags.4?string"},{"name":"other_value","type":"string"}],"type":"LangPackString"},{"id":695856818,"predicate":"langPackStringDeleted","params":[{"name":"key","type":"string"}],"type":"LangPackString"},{"id":4085629430,"predicate":"langPackDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"strings","type":"Vector"}],"type":"LangPackDifference"},{"id":4006239459,"predicate":"langPackLanguage","params":[{"name":"flags","type":"#"},{"name":"official","type":"flags.0?true"},{"name":"rtl","type":"flags.2?true"},{"name":"beta","type":"flags.3?true"},{"name":"name","type":"string"},{"name":"native_name","type":"string"},{"name":"lang_code","type":"string"},{"name":"base_lang_code","type":"flags.1?string"},{"name":"plural_code","type":"string"},{"name":"strings_count","type":"int"},{"name":"translated_count","type":"int"},{"name":"translations_url","type":"string"}],"type":"LangPackLanguage"},{"id":3873421349,"predicate":"channelAdminLogEventActionChangeTitle","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1427671598,"predicate":"channelAdminLogEventActionChangeAbout","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1783299128,"predicate":"channelAdminLogEventActionChangeUsername","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1129042607,"predicate":"channelAdminLogEventActionChangePhoto","params":[{"name":"prev_photo","type":"Photo"},{"name":"new_photo","type":"Photo"}],"type":"ChannelAdminLogEventAction"},{"id":460916654,"predicate":"channelAdminLogEventActionToggleInvites","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":648939889,"predicate":"channelAdminLogEventActionToggleSignatures","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":3924306968,"predicate":"channelAdminLogEventActionUpdatePinned","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1889215493,"predicate":"channelAdminLogEventActionEditMessage","params":[{"name":"prev_message","type":"Message"},{"name":"new_message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1121994683,"predicate":"channelAdminLogEventActionDeleteMessage","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":405815507,"predicate":"channelAdminLogEventActionParticipantJoin","params":[],"type":"ChannelAdminLogEventAction"},{"id":4170676210,"predicate":"channelAdminLogEventActionParticipantLeave","params":[],"type":"ChannelAdminLogEventAction"},{"id":3810276568,"predicate":"channelAdminLogEventActionParticipantInvite","params":[{"name":"participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":3872931198,"predicate":"channelAdminLogEventActionParticipantToggleBan","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":3580323600,"predicate":"channelAdminLogEventActionParticipantToggleAdmin","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":2982398631,"predicate":"channelAdminLogEventActionChangeStickerSet","params":[{"name":"prev_stickerset","type":"InputStickerSet"},{"name":"new_stickerset","type":"InputStickerSet"}],"type":"ChannelAdminLogEventAction"},{"id":1599903217,"predicate":"channelAdminLogEventActionTogglePreHistoryHidden","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":771095562,"predicate":"channelAdminLogEventActionDefaultBannedRights","params":[{"name":"prev_banned_rights","type":"ChatBannedRights"},{"name":"new_banned_rights","type":"ChatBannedRights"}],"type":"ChannelAdminLogEventAction"},{"id":2399639107,"predicate":"channelAdminLogEventActionStopPoll","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":84703944,"predicate":"channelAdminLogEventActionChangeLinkedChat","params":[{"name":"prev_value","type":"long"},{"name":"new_value","type":"long"}],"type":"ChannelAdminLogEventAction"},{"id":241923758,"predicate":"channelAdminLogEventActionChangeLocation","params":[{"name":"prev_value","type":"ChannelLocation"},{"name":"new_value","type":"ChannelLocation"}],"type":"ChannelAdminLogEventAction"},{"id":1401984889,"predicate":"channelAdminLogEventActionToggleSlowMode","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":589338437,"predicate":"channelAdminLogEventActionStartGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":3684667712,"predicate":"channelAdminLogEventActionDiscardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":4179895506,"predicate":"channelAdminLogEventActionParticipantMute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":3863226816,"predicate":"channelAdminLogEventActionParticipantUnmute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1456906823,"predicate":"channelAdminLogEventActionToggleGroupCallSetting","params":[{"name":"join_muted","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":1557846647,"predicate":"channelAdminLogEventActionParticipantJoinByInvite","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1515256996,"predicate":"channelAdminLogEventActionExportedInviteDelete","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1091179342,"predicate":"channelAdminLogEventActionExportedInviteRevoke","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":3910056793,"predicate":"channelAdminLogEventActionExportedInviteEdit","params":[{"name":"prev_invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1048537159,"predicate":"channelAdminLogEventActionParticipantVolume","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1855199800,"predicate":"channelAdminLogEventActionChangeHistoryTTL","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":4268294541,"predicate":"channelAdminLogEventActionChangeTheme","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":531458253,"predicate":"channelAdminLogEvent","params":[{"name":"id","type":"long"},{"name":"date","type":"int"},{"name":"user_id","type":"long"},{"name":"action","type":"ChannelAdminLogEventAction"}],"type":"ChannelAdminLogEvent"},{"id":3985307469,"predicate":"channels.adminLogResults","params":[{"name":"events","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.AdminLogResults"},{"id":3926948580,"predicate":"channelAdminLogEventsFilter","params":[{"name":"flags","type":"#"},{"name":"join","type":"flags.0?true"},{"name":"leave","type":"flags.1?true"},{"name":"invite","type":"flags.2?true"},{"name":"ban","type":"flags.3?true"},{"name":"unban","type":"flags.4?true"},{"name":"kick","type":"flags.5?true"},{"name":"unkick","type":"flags.6?true"},{"name":"promote","type":"flags.7?true"},{"name":"demote","type":"flags.8?true"},{"name":"info","type":"flags.9?true"},{"name":"settings","type":"flags.10?true"},{"name":"pinned","type":"flags.11?true"},{"name":"edit","type":"flags.12?true"},{"name":"delete","type":"flags.13?true"},{"name":"group_call","type":"flags.14?true"},{"name":"invites","type":"flags.15?true"}],"type":"ChannelAdminLogEventsFilter"},{"id":1558266229,"predicate":"popularContact","params":[{"name":"client_id","type":"long"},{"name":"importers","type":"int"}],"type":"PopularContact"},{"id":2660214483,"predicate":"messages.favedStickersNotModified","params":[],"type":"messages.FavedStickers"},{"id":750063767,"predicate":"messages.favedStickers","params":[{"name":"hash","type":"long"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"}],"type":"messages.FavedStickers"},{"id":1189204285,"predicate":"recentMeUrlUnknown","params":[{"name":"url","type":"string"}],"type":"RecentMeUrl"},{"id":3106671074,"predicate":"recentMeUrlUser","params":[{"name":"url","type":"string"},{"name":"user_id","type":"long"}],"type":"RecentMeUrl"},{"id":3000660434,"predicate":"recentMeUrlChat","params":[{"name":"url","type":"string"},{"name":"chat_id","type":"long"}],"type":"RecentMeUrl"},{"id":3947431965,"predicate":"recentMeUrlChatInvite","params":[{"name":"url","type":"string"},{"name":"chat_invite","type":"ChatInvite"}],"type":"RecentMeUrl"},{"id":3154794460,"predicate":"recentMeUrlStickerSet","params":[{"name":"url","type":"string"},{"name":"set","type":"StickerSetCovered"}],"type":"RecentMeUrl"},{"id":235081943,"predicate":"help.recentMeUrls","params":[{"name":"urls","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"help.RecentMeUrls"},{"id":482797855,"predicate":"inputSingleMedia","params":[{"name":"flags","type":"#"},{"name":"media","type":"InputMedia"},{"name":"random_id","type":"long"},{"name":"message","type":"string"},{"name":"entities","type":"flags.0?Vector"}],"type":"InputSingleMedia"},{"id":2801333330,"predicate":"webAuthorization","params":[{"name":"hash","type":"long"},{"name":"bot_id","type":"long"},{"name":"domain","type":"string"},{"name":"browser","type":"string"},{"name":"platform","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"region","type":"string"}],"type":"WebAuthorization"},{"id":3981887996,"predicate":"account.webAuthorizations","params":[{"name":"authorizations","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.WebAuthorizations"},{"id":2792792866,"predicate":"inputMessageID","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":3134751637,"predicate":"inputMessageReplyTo","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":2257003832,"predicate":"inputMessagePinned","params":[],"type":"InputMessage"},{"id":2902071934,"predicate":"inputMessageCallbackQuery","params":[{"name":"id","type":"int"},{"name":"query_id","type":"long"}],"type":"InputMessage"},{"id":4239064759,"predicate":"inputDialogPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputDialogPeer"},{"id":1684014375,"predicate":"inputDialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"InputDialogPeer"},{"id":3849174789,"predicate":"dialogPeer","params":[{"name":"peer","type":"Peer"}],"type":"DialogPeer"},{"id":1363483106,"predicate":"dialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"DialogPeer"},{"id":223655517,"predicate":"messages.foundStickerSetsNotModified","params":[],"type":"messages.FoundStickerSets"},{"id":2331024850,"predicate":"messages.foundStickerSets","params":[{"name":"hash","type":"long"},{"name":"sets","type":"Vector"}],"type":"messages.FoundStickerSets"},{"id":1648543603,"predicate":"fileHash","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"bytes"}],"type":"FileHash"},{"id":1968737087,"predicate":"inputClientProxy","params":[{"name":"address","type":"string"},{"name":"port","type":"int"}],"type":"InputClientProxy"},{"id":3811614591,"predicate":"help.termsOfServiceUpdateEmpty","params":[{"name":"expires","type":"int"}],"type":"help.TermsOfServiceUpdate"},{"id":686618977,"predicate":"help.termsOfServiceUpdate","params":[{"name":"expires","type":"int"},{"name":"terms_of_service","type":"help.TermsOfService"}],"type":"help.TermsOfServiceUpdate"},{"id":859091184,"predicate":"inputSecureFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"InputSecureFile"},{"id":1399317950,"predicate":"inputSecureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputSecureFile"},{"id":1679398724,"predicate":"secureFileEmpty","params":[],"type":"SecureFile"},{"id":3760683618,"predicate":"secureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"date","type":"int"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureFile"},{"id":2330640067,"predicate":"secureData","params":[{"name":"data","type":"bytes"},{"name":"data_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureData"},{"id":2103482845,"predicate":"securePlainPhone","params":[{"name":"phone","type":"string"}],"type":"SecurePlainData"},{"id":569137759,"predicate":"securePlainEmail","params":[{"name":"email","type":"string"}],"type":"SecurePlainData"},{"id":2636808675,"predicate":"secureValueTypePersonalDetails","params":[],"type":"SecureValueType"},{"id":1034709504,"predicate":"secureValueTypePassport","params":[],"type":"SecureValueType"},{"id":115615172,"predicate":"secureValueTypeDriverLicense","params":[],"type":"SecureValueType"},{"id":2698015819,"predicate":"secureValueTypeIdentityCard","params":[],"type":"SecureValueType"},{"id":2577698595,"predicate":"secureValueTypeInternalPassport","params":[],"type":"SecureValueType"},{"id":3420659238,"predicate":"secureValueTypeAddress","params":[],"type":"SecureValueType"},{"id":4231435598,"predicate":"secureValueTypeUtilityBill","params":[],"type":"SecureValueType"},{"id":2299755533,"predicate":"secureValueTypeBankStatement","params":[],"type":"SecureValueType"},{"id":2340959368,"predicate":"secureValueTypeRentalAgreement","params":[],"type":"SecureValueType"},{"id":2581823594,"predicate":"secureValueTypePassportRegistration","params":[],"type":"SecureValueType"},{"id":3926060083,"predicate":"secureValueTypeTemporaryRegistration","params":[],"type":"SecureValueType"},{"id":3005262555,"predicate":"secureValueTypePhone","params":[],"type":"SecureValueType"},{"id":2386339822,"predicate":"secureValueTypeEmail","params":[],"type":"SecureValueType"},{"id":411017418,"predicate":"secureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?SecureFile"},{"name":"reverse_side","type":"flags.2?SecureFile"},{"name":"selfie","type":"flags.3?SecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"},{"name":"hash","type":"bytes"}],"type":"SecureValue"},{"id":3676426407,"predicate":"inputSecureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?InputSecureFile"},{"name":"reverse_side","type":"flags.2?InputSecureFile"},{"name":"selfie","type":"flags.3?InputSecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"}],"type":"InputSecureValue"},{"id":3978218928,"predicate":"secureValueHash","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"}],"type":"SecureValueHash"},{"id":3903065049,"predicate":"secureValueErrorData","params":[{"name":"type","type":"SecureValueType"},{"name":"data_hash","type":"bytes"},{"name":"field","type":"string"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":12467706,"predicate":"secureValueErrorFrontSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2257201829,"predicate":"secureValueErrorReverseSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":3845639894,"predicate":"secureValueErrorSelfie","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2054162547,"predicate":"secureValueErrorFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":1717706985,"predicate":"secureValueErrorFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2258466191,"predicate":"secureValueError","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2702460784,"predicate":"secureValueErrorTranslationFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":878931416,"predicate":"secureValueErrorTranslationFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":871426631,"predicate":"secureCredentialsEncrypted","params":[{"name":"data","type":"bytes"},{"name":"hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureCredentialsEncrypted"},{"id":2905480408,"predicate":"account.authorizationForm","params":[{"name":"flags","type":"#"},{"name":"required_types","type":"Vector"},{"name":"values","type":"Vector"},{"name":"errors","type":"Vector"},{"name":"users","type":"Vector"},{"name":"privacy_policy_url","type":"flags.0?string"}],"type":"account.AuthorizationForm"},{"id":2166326607,"predicate":"account.sentEmailCode","params":[{"name":"email_pattern","type":"string"},{"name":"length","type":"int"}],"type":"account.SentEmailCode"},{"id":1722786150,"predicate":"help.deepLinkInfoEmpty","params":[],"type":"help.DeepLinkInfo"},{"id":1783556146,"predicate":"help.deepLinkInfo","params":[{"name":"flags","type":"#"},{"name":"update_app","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"help.DeepLinkInfo"},{"id":289586518,"predicate":"savedPhoneContact","params":[{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"date","type":"int"}],"type":"SavedContact"},{"id":1304052993,"predicate":"account.takeout","params":[{"name":"id","type":"long"}],"type":"account.Takeout"},{"id":3562713238,"predicate":"passwordKdfAlgoUnknown","params":[],"type":"PasswordKdfAlgo"},{"id":982592842,"predicate":"passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow","params":[{"name":"salt1","type":"bytes"},{"name":"salt2","type":"bytes"},{"name":"g","type":"int"},{"name":"p","type":"bytes"}],"type":"PasswordKdfAlgo"},{"id":4883767,"predicate":"securePasswordKdfAlgoUnknown","params":[],"type":"SecurePasswordKdfAlgo"},{"id":3153255840,"predicate":"securePasswordKdfAlgoPBKDF2HMACSHA512iter100000","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":2252807570,"predicate":"securePasswordKdfAlgoSHA512","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":354925740,"predicate":"secureSecretSettings","params":[{"name":"secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_secret","type":"bytes"},{"name":"secure_secret_id","type":"long"}],"type":"SecureSecretSettings"},{"id":2558588504,"predicate":"inputCheckPasswordEmpty","params":[],"type":"InputCheckPasswordSRP"},{"id":3531600002,"predicate":"inputCheckPasswordSRP","params":[{"name":"srp_id","type":"long"},{"name":"A","type":"bytes"},{"name":"M1","type":"bytes"}],"type":"InputCheckPasswordSRP"},{"id":2191366618,"predicate":"secureRequiredType","params":[{"name":"flags","type":"#"},{"name":"native_names","type":"flags.0?true"},{"name":"selfie_required","type":"flags.1?true"},{"name":"translation_required","type":"flags.2?true"},{"name":"type","type":"SecureValueType"}],"type":"SecureRequiredType"},{"id":41187252,"predicate":"secureRequiredTypeOneOf","params":[{"name":"types","type":"Vector"}],"type":"SecureRequiredType"},{"id":3216634967,"predicate":"help.passportConfigNotModified","params":[],"type":"help.PassportConfig"},{"id":2694370991,"predicate":"help.passportConfig","params":[{"name":"hash","type":"int"},{"name":"countries_langs","type":"DataJSON"}],"type":"help.PassportConfig"},{"id":488313413,"predicate":"inputAppEvent","params":[{"name":"time","type":"double"},{"name":"type","type":"string"},{"name":"peer","type":"long"},{"name":"data","type":"JSONValue"}],"type":"InputAppEvent"},{"id":3235781593,"predicate":"jsonObjectValue","params":[{"name":"key","type":"string"},{"name":"value","type":"JSONValue"}],"type":"JSONObjectValue"},{"id":1064139624,"predicate":"jsonNull","params":[],"type":"JSONValue"},{"id":3342098026,"predicate":"jsonBool","params":[{"name":"value","type":"Bool"}],"type":"JSONValue"},{"id":736157604,"predicate":"jsonNumber","params":[{"name":"value","type":"double"}],"type":"JSONValue"},{"id":3072226938,"predicate":"jsonString","params":[{"name":"value","type":"string"}],"type":"JSONValue"},{"id":4148447075,"predicate":"jsonArray","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":2579616925,"predicate":"jsonObject","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":878078826,"predicate":"pageTableCell","params":[{"name":"flags","type":"#"},{"name":"header","type":"flags.0?true"},{"name":"align_center","type":"flags.3?true"},{"name":"align_right","type":"flags.4?true"},{"name":"valign_middle","type":"flags.5?true"},{"name":"valign_bottom","type":"flags.6?true"},{"name":"text","type":"flags.7?RichText"},{"name":"colspan","type":"flags.1?int"},{"name":"rowspan","type":"flags.2?int"}],"type":"PageTableCell"},{"id":3770729957,"predicate":"pageTableRow","params":[{"name":"cells","type":"Vector"}],"type":"PageTableRow"},{"id":1869903447,"predicate":"pageCaption","params":[{"name":"text","type":"RichText"},{"name":"credit","type":"RichText"}],"type":"PageCaption"},{"id":3106911949,"predicate":"pageListItemText","params":[{"name":"text","type":"RichText"}],"type":"PageListItem"},{"id":635466748,"predicate":"pageListItemBlocks","params":[{"name":"blocks","type":"Vector"}],"type":"PageListItem"},{"id":1577484359,"predicate":"pageListOrderedItemText","params":[{"name":"num","type":"string"},{"name":"text","type":"RichText"}],"type":"PageListOrderedItem"},{"id":2564655414,"predicate":"pageListOrderedItemBlocks","params":[{"name":"num","type":"string"},{"name":"blocks","type":"Vector"}],"type":"PageListOrderedItem"},{"id":3012615176,"predicate":"pageRelatedArticle","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"title","type":"flags.0?string"},{"name":"description","type":"flags.1?string"},{"name":"photo_id","type":"flags.2?long"},{"name":"author","type":"flags.3?string"},{"name":"published_date","type":"flags.4?int"}],"type":"PageRelatedArticle"},{"id":2556788493,"predicate":"page","params":[{"name":"flags","type":"#"},{"name":"part","type":"flags.0?true"},{"name":"rtl","type":"flags.1?true"},{"name":"v2","type":"flags.2?true"},{"name":"url","type":"string"},{"name":"blocks","type":"Vector"},{"name":"photos","type":"Vector"},{"name":"documents","type":"Vector"},{"name":"views","type":"flags.3?int"}],"type":"Page"},{"id":2349199817,"predicate":"help.supportName","params":[{"name":"name","type":"string"}],"type":"help.SupportName"},{"id":4088278765,"predicate":"help.userInfoEmpty","params":[],"type":"help.UserInfo"},{"id":32192344,"predicate":"help.userInfo","params":[{"name":"message","type":"string"},{"name":"entities","type":"Vector"},{"name":"author","type":"string"},{"name":"date","type":"int"}],"type":"help.UserInfo"},{"id":1823064809,"predicate":"pollAnswer","params":[{"name":"text","type":"string"},{"name":"option","type":"bytes"}],"type":"PollAnswer"},{"id":2262925665,"predicate":"poll","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"closed","type":"flags.0?true"},{"name":"public_voters","type":"flags.1?true"},{"name":"multiple_choice","type":"flags.2?true"},{"name":"quiz","type":"flags.3?true"},{"name":"question","type":"string"},{"name":"answers","type":"Vector"},{"name":"close_period","type":"flags.4?int"},{"name":"close_date","type":"flags.5?int"}],"type":"Poll"},{"id":997055186,"predicate":"pollAnswerVoters","params":[{"name":"flags","type":"#"},{"name":"chosen","type":"flags.0?true"},{"name":"correct","type":"flags.1?true"},{"name":"option","type":"bytes"},{"name":"voters","type":"int"}],"type":"PollAnswerVoters"},{"id":3703058083,"predicate":"pollResults","params":[{"name":"flags","type":"#"},{"name":"min","type":"flags.0?true"},{"name":"results","type":"flags.1?Vector"},{"name":"total_voters","type":"flags.2?int"},{"name":"recent_voters","type":"flags.3?Vector"},{"name":"solution","type":"flags.4?string"},{"name":"solution_entities","type":"flags.4?Vector"}],"type":"PollResults"},{"id":4030849616,"predicate":"chatOnlines","params":[{"name":"onlines","type":"int"}],"type":"ChatOnlines"},{"id":1202287072,"predicate":"statsURL","params":[{"name":"url","type":"string"}],"type":"StatsURL"},{"id":1605510357,"predicate":"chatAdminRights","params":[{"name":"flags","type":"#"},{"name":"change_info","type":"flags.0?true"},{"name":"post_messages","type":"flags.1?true"},{"name":"edit_messages","type":"flags.2?true"},{"name":"delete_messages","type":"flags.3?true"},{"name":"ban_users","type":"flags.4?true"},{"name":"invite_users","type":"flags.5?true"},{"name":"pin_messages","type":"flags.7?true"},{"name":"add_admins","type":"flags.9?true"},{"name":"anonymous","type":"flags.10?true"},{"name":"manage_call","type":"flags.11?true"},{"name":"other","type":"flags.12?true"}],"type":"ChatAdminRights"},{"id":2668758040,"predicate":"chatBannedRights","params":[{"name":"flags","type":"#"},{"name":"view_messages","type":"flags.0?true"},{"name":"send_messages","type":"flags.1?true"},{"name":"send_media","type":"flags.2?true"},{"name":"send_stickers","type":"flags.3?true"},{"name":"send_gifs","type":"flags.4?true"},{"name":"send_games","type":"flags.5?true"},{"name":"send_inline","type":"flags.6?true"},{"name":"embed_links","type":"flags.7?true"},{"name":"send_polls","type":"flags.8?true"},{"name":"change_info","type":"flags.10?true"},{"name":"invite_users","type":"flags.15?true"},{"name":"pin_messages","type":"flags.17?true"},{"name":"until_date","type":"int"}],"type":"ChatBannedRights"},{"id":3861952889,"predicate":"inputWallPaper","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputWallPaper"},{"id":1913199744,"predicate":"inputWallPaperSlug","params":[{"name":"slug","type":"string"}],"type":"InputWallPaper"},{"id":2524595758,"predicate":"inputWallPaperNoFile","params":[{"name":"id","type":"long"}],"type":"InputWallPaper"},{"id":471437699,"predicate":"account.wallPapersNotModified","params":[],"type":"account.WallPapers"},{"id":3452142988,"predicate":"account.wallPapers","params":[{"name":"hash","type":"long"},{"name":"wallpapers","type":"Vector"}],"type":"account.WallPapers"},{"id":3737042563,"predicate":"codeSettings","params":[{"name":"flags","type":"#"},{"name":"allow_flashcall","type":"flags.0?true"},{"name":"current_number","type":"flags.1?true"},{"name":"allow_app_hash","type":"flags.4?true"}],"type":"CodeSettings"},{"id":499236004,"predicate":"wallPaperSettings","params":[{"name":"flags","type":"#"},{"name":"blur","type":"flags.1?true"},{"name":"motion","type":"flags.2?true"},{"name":"background_color","type":"flags.0?int"},{"name":"second_background_color","type":"flags.4?int"},{"name":"third_background_color","type":"flags.5?int"},{"name":"fourth_background_color","type":"flags.6?int"},{"name":"intensity","type":"flags.3?int"},{"name":"rotation","type":"flags.4?int"}],"type":"WallPaperSettings"},{"id":3762434803,"predicate":"autoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"disabled","type":"flags.0?true"},{"name":"video_preload_large","type":"flags.1?true"},{"name":"audio_preload_next","type":"flags.2?true"},{"name":"phonecalls_less_data","type":"flags.3?true"},{"name":"photo_size_max","type":"int"},{"name":"video_size_max","type":"int"},{"name":"file_size_max","type":"int"},{"name":"video_upload_maxbitrate","type":"int"}],"type":"AutoDownloadSettings"},{"id":1674235686,"predicate":"account.autoDownloadSettings","params":[{"name":"low","type":"AutoDownloadSettings"},{"name":"medium","type":"AutoDownloadSettings"},{"name":"high","type":"AutoDownloadSettings"}],"type":"account.AutoDownloadSettings"},{"id":3585325561,"predicate":"emojiKeyword","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":594408994,"predicate":"emojiKeywordDeleted","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":1556570557,"predicate":"emojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"keywords","type":"Vector"}],"type":"EmojiKeywordsDifference"},{"id":2775937949,"predicate":"emojiURL","params":[{"name":"url","type":"string"}],"type":"EmojiURL"},{"id":3019592545,"predicate":"emojiLanguage","params":[{"name":"lang_code","type":"string"}],"type":"EmojiLanguage"},{"id":4283715173,"predicate":"folder","params":[{"name":"flags","type":"#"},{"name":"autofill_new_broadcasts","type":"flags.0?true"},{"name":"autofill_public_groups","type":"flags.1?true"},{"name":"autofill_new_correspondents","type":"flags.2?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"flags.3?ChatPhoto"}],"type":"Folder"},{"id":4224893590,"predicate":"inputFolderPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"folder_id","type":"int"}],"type":"InputFolderPeer"},{"id":3921323624,"predicate":"folderPeer","params":[{"name":"peer","type":"Peer"},{"name":"folder_id","type":"int"}],"type":"FolderPeer"},{"id":3896830975,"predicate":"messages.searchCounter","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"filter","type":"MessagesFilter"},{"name":"count","type":"int"}],"type":"messages.SearchCounter"},{"id":2463316494,"predicate":"urlAuthResultRequest","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"bot","type":"User"},{"name":"domain","type":"string"}],"type":"UrlAuthResult"},{"id":2408320590,"predicate":"urlAuthResultAccepted","params":[{"name":"url","type":"string"}],"type":"UrlAuthResult"},{"id":2849430303,"predicate":"urlAuthResultDefault","params":[],"type":"UrlAuthResult"},{"id":3216354699,"predicate":"channelLocationEmpty","params":[],"type":"ChannelLocation"},{"id":547062491,"predicate":"channelLocation","params":[{"name":"geo_point","type":"GeoPoint"},{"name":"address","type":"string"}],"type":"ChannelLocation"},{"id":3393592157,"predicate":"peerLocated","params":[{"name":"peer","type":"Peer"},{"name":"expires","type":"int"},{"name":"distance","type":"int"}],"type":"PeerLocated"},{"id":4176226379,"predicate":"peerSelfLocated","params":[{"name":"expires","type":"int"}],"type":"PeerLocated"},{"id":3497176244,"predicate":"restrictionReason","params":[{"name":"platform","type":"string"},{"name":"reason","type":"string"},{"name":"text","type":"string"}],"type":"RestrictionReason"},{"id":1012306921,"predicate":"inputTheme","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputTheme"},{"id":4119399921,"predicate":"inputThemeSlug","params":[{"name":"slug","type":"string"}],"type":"InputTheme"},{"id":3892492508,"predicate":"theme","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"for_chat","type":"flags.5?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?Document"},{"name":"settings","type":"flags.3?ThemeSettings"},{"name":"installs_count","type":"flags.4?int"}],"type":"Theme"},{"id":4095653410,"predicate":"account.themesNotModified","params":[],"type":"account.Themes"},{"id":2587724909,"predicate":"account.themes","params":[{"name":"hash","type":"long"},{"name":"themes","type":"Vector"}],"type":"account.Themes"},{"id":1654593920,"predicate":"auth.loginToken","params":[{"name":"expires","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":110008598,"predicate":"auth.loginTokenMigrateTo","params":[{"name":"dc_id","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":957176926,"predicate":"auth.loginTokenSuccess","params":[{"name":"authorization","type":"auth.Authorization"}],"type":"auth.LoginToken"},{"id":1474462241,"predicate":"account.contentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"},{"name":"sensitive_can_change","type":"flags.1?true"}],"type":"account.ContentSettings"},{"id":2837970629,"predicate":"messages.inactiveChats","params":[{"name":"dates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.InactiveChats"},{"id":3282117730,"predicate":"baseThemeClassic","params":[],"type":"BaseTheme"},{"id":4225242760,"predicate":"baseThemeDay","params":[],"type":"BaseTheme"},{"id":3081969320,"predicate":"baseThemeNight","params":[],"type":"BaseTheme"},{"id":1834973166,"predicate":"baseThemeTinted","params":[],"type":"BaseTheme"},{"id":1527845466,"predicate":"baseThemeArctic","params":[],"type":"BaseTheme"},{"id":2413711439,"predicate":"inputThemeSettings","params":[{"name":"flags","type":"#"},{"name":"message_colors_animated","type":"flags.2?true"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"outbox_accent_color","type":"flags.3?int"},{"name":"message_colors","type":"flags.0?Vector"},{"name":"wallpaper","type":"flags.1?InputWallPaper"},{"name":"wallpaper_settings","type":"flags.1?WallPaperSettings"}],"type":"InputThemeSettings"},{"id":4200117972,"predicate":"themeSettings","params":[{"name":"flags","type":"#"},{"name":"message_colors_animated","type":"flags.2?true"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"outbox_accent_color","type":"flags.3?int"},{"name":"message_colors","type":"flags.0?Vector"},{"name":"wallpaper","type":"flags.1?WallPaper"}],"type":"ThemeSettings"},{"id":1421174295,"predicate":"webPageAttributeTheme","params":[{"name":"flags","type":"#"},{"name":"documents","type":"flags.0?Vector"},{"name":"settings","type":"flags.1?ThemeSettings"}],"type":"WebPageAttribute"},{"id":886196148,"predicate":"messageUserVote","params":[{"name":"user_id","type":"long"},{"name":"option","type":"bytes"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":1017491692,"predicate":"messageUserVoteInputOption","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":2321933655,"predicate":"messageUserVoteMultiple","params":[{"name":"user_id","type":"long"},{"name":"options","type":"Vector"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":136574537,"predicate":"messages.votesList","params":[{"name":"flags","type":"#"},{"name":"count","type":"int"},{"name":"votes","type":"Vector"},{"name":"users","type":"Vector"},{"name":"next_offset","type":"flags.0?string"}],"type":"messages.VotesList"},{"id":4117234314,"predicate":"bankCardOpenUrl","params":[{"name":"url","type":"string"},{"name":"name","type":"string"}],"type":"BankCardOpenUrl"},{"id":1042605427,"predicate":"payments.bankCardData","params":[{"name":"title","type":"string"},{"name":"open_urls","type":"Vector"}],"type":"payments.BankCardData"},{"id":1949890536,"predicate":"dialogFilter","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"non_contacts","type":"flags.1?true"},{"name":"groups","type":"flags.2?true"},{"name":"broadcasts","type":"flags.3?true"},{"name":"bots","type":"flags.4?true"},{"name":"exclude_muted","type":"flags.11?true"},{"name":"exclude_read","type":"flags.12?true"},{"name":"exclude_archived","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"emoticon","type":"flags.25?string"},{"name":"pinned_peers","type":"Vector"},{"name":"include_peers","type":"Vector"},{"name":"exclude_peers","type":"Vector"}],"type":"DialogFilter"},{"id":2004110666,"predicate":"dialogFilterSuggested","params":[{"name":"filter","type":"DialogFilter"},{"name":"description","type":"string"}],"type":"DialogFilterSuggested"},{"id":3057118639,"predicate":"statsDateRangeDays","params":[{"name":"min_date","type":"int"},{"name":"max_date","type":"int"}],"type":"StatsDateRangeDays"},{"id":3410210014,"predicate":"statsAbsValueAndPrev","params":[{"name":"current","type":"double"},{"name":"previous","type":"double"}],"type":"StatsAbsValueAndPrev"},{"id":3419287520,"predicate":"statsPercentValue","params":[{"name":"part","type":"double"},{"name":"total","type":"double"}],"type":"StatsPercentValue"},{"id":1244130093,"predicate":"statsGraphAsync","params":[{"name":"token","type":"string"}],"type":"StatsGraph"},{"id":3202127906,"predicate":"statsGraphError","params":[{"name":"error","type":"string"}],"type":"StatsGraph"},{"id":2393138358,"predicate":"statsGraph","params":[{"name":"flags","type":"#"},{"name":"json","type":"DataJSON"},{"name":"zoom_token","type":"flags.0?string"}],"type":"StatsGraph"},{"id":2907687357,"predicate":"messageInteractionCounters","params":[{"name":"msg_id","type":"int"},{"name":"views","type":"int"},{"name":"forwards","type":"int"}],"type":"MessageInteractionCounters"},{"id":3187114900,"predicate":"stats.broadcastStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"followers","type":"StatsAbsValueAndPrev"},{"name":"views_per_post","type":"StatsAbsValueAndPrev"},{"name":"shares_per_post","type":"StatsAbsValueAndPrev"},{"name":"enabled_notifications","type":"StatsPercentValue"},{"name":"growth_graph","type":"StatsGraph"},{"name":"followers_graph","type":"StatsGraph"},{"name":"mute_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"interactions_graph","type":"StatsGraph"},{"name":"iv_interactions_graph","type":"StatsGraph"},{"name":"views_by_source_graph","type":"StatsGraph"},{"name":"new_followers_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"recent_message_interactions","type":"Vector"}],"type":"stats.BroadcastStats"},{"id":2566302837,"predicate":"help.promoDataEmpty","params":[{"name":"expires","type":"int"}],"type":"help.PromoData"},{"id":2352576831,"predicate":"help.promoData","params":[{"name":"flags","type":"#"},{"name":"proxy","type":"flags.0?true"},{"name":"expires","type":"int"},{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"psa_type","type":"flags.1?string"},{"name":"psa_message","type":"flags.2?string"}],"type":"help.PromoData"},{"id":3727929492,"predicate":"videoSize","params":[{"name":"flags","type":"#"},{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"},{"name":"video_start_ts","type":"flags.0?double"}],"type":"VideoSize"},{"id":2634330011,"predicate":"statsGroupTopPoster","params":[{"name":"user_id","type":"long"},{"name":"messages","type":"int"},{"name":"avg_chars","type":"int"}],"type":"StatsGroupTopPoster"},{"id":3612888199,"predicate":"statsGroupTopAdmin","params":[{"name":"user_id","type":"long"},{"name":"deleted","type":"int"},{"name":"kicked","type":"int"},{"name":"banned","type":"int"}],"type":"StatsGroupTopAdmin"},{"id":1398765469,"predicate":"statsGroupTopInviter","params":[{"name":"user_id","type":"long"},{"name":"invitations","type":"int"}],"type":"StatsGroupTopInviter"},{"id":4018141462,"predicate":"stats.megagroupStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"members","type":"StatsAbsValueAndPrev"},{"name":"messages","type":"StatsAbsValueAndPrev"},{"name":"viewers","type":"StatsAbsValueAndPrev"},{"name":"posters","type":"StatsAbsValueAndPrev"},{"name":"growth_graph","type":"StatsGraph"},{"name":"members_graph","type":"StatsGraph"},{"name":"new_members_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"messages_graph","type":"StatsGraph"},{"name":"actions_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"weekdays_graph","type":"StatsGraph"},{"name":"top_posters","type":"Vector"},{"name":"top_admins","type":"Vector"},{"name":"top_inviters","type":"Vector"},{"name":"users","type":"Vector"}],"type":"stats.MegagroupStats"},{"id":3198350372,"predicate":"globalPrivacySettings","params":[{"name":"flags","type":"#"},{"name":"archive_and_mute_new_noncontact_peers","type":"flags.0?Bool"}],"type":"GlobalPrivacySettings"},{"id":1107543535,"predicate":"help.countryCode","params":[{"name":"flags","type":"#"},{"name":"country_code","type":"string"},{"name":"prefixes","type":"flags.0?Vector"},{"name":"patterns","type":"flags.1?Vector"}],"type":"help.CountryCode"},{"id":3280440867,"predicate":"help.country","params":[{"name":"flags","type":"#"},{"name":"hidden","type":"flags.0?true"},{"name":"iso2","type":"string"},{"name":"default_name","type":"string"},{"name":"name","type":"flags.1?string"},{"name":"country_codes","type":"Vector"}],"type":"help.Country"},{"id":2479628082,"predicate":"help.countriesListNotModified","params":[],"type":"help.CountriesList"},{"id":2278585758,"predicate":"help.countriesList","params":[{"name":"countries","type":"Vector"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":1163625789,"predicate":"messageViews","params":[{"name":"flags","type":"#"},{"name":"views","type":"flags.0?int"},{"name":"forwards","type":"flags.1?int"},{"name":"replies","type":"flags.2?MessageReplies"}],"type":"MessageViews"},{"id":3066361155,"predicate":"messages.messageViews","params":[{"name":"views","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.MessageViews"},{"id":2788431746,"predicate":"messages.discussionMessage","params":[{"name":"flags","type":"#"},{"name":"messages","type":"Vector"},{"name":"max_id","type":"flags.0?int"},{"name":"read_inbox_max_id","type":"flags.1?int"},{"name":"read_outbox_max_id","type":"flags.2?int"},{"name":"unread_count","type":"int"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.DiscussionMessage"},{"id":2799007587,"predicate":"messageReplyHeader","params":[{"name":"flags","type":"#"},{"name":"reply_to_msg_id","type":"int"},{"name":"reply_to_peer_id","type":"flags.0?Peer"},{"name":"reply_to_top_id","type":"flags.1?int"}],"type":"MessageReplyHeader"},{"id":2211844034,"predicate":"messageReplies","params":[{"name":"flags","type":"#"},{"name":"comments","type":"flags.0?true"},{"name":"replies","type":"int"},{"name":"replies_pts","type":"int"},{"name":"recent_repliers","type":"flags.1?Vector"},{"name":"channel_id","type":"flags.0?long"},{"name":"max_id","type":"flags.2?int"},{"name":"read_max_id","type":"flags.3?int"}],"type":"MessageReplies"},{"id":3908927508,"predicate":"peerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"date","type":"int"}],"type":"PeerBlocked"},{"id":2308567701,"predicate":"stats.messageStats","params":[{"name":"views_graph","type":"StatsGraph"}],"type":"stats.MessageStats"},{"id":2004925620,"predicate":"groupCallDiscarded","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"duration","type":"int"}],"type":"GroupCall"},{"id":3583468812,"predicate":"groupCall","params":[{"name":"flags","type":"#"},{"name":"join_muted","type":"flags.1?true"},{"name":"can_change_join_muted","type":"flags.2?true"},{"name":"join_date_asc","type":"flags.6?true"},{"name":"schedule_start_subscribed","type":"flags.8?true"},{"name":"can_start_video","type":"flags.9?true"},{"name":"record_video_active","type":"flags.11?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"participants_count","type":"int"},{"name":"title","type":"flags.3?string"},{"name":"stream_dc_id","type":"flags.4?int"},{"name":"record_start_date","type":"flags.5?int"},{"name":"schedule_date","type":"flags.7?int"},{"name":"unmuted_video_count","type":"flags.10?int"},{"name":"unmuted_video_limit","type":"int"},{"name":"version","type":"int"}],"type":"GroupCall"},{"id":3635053583,"predicate":"inputGroupCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGroupCall"},{"id":3953538814,"predicate":"groupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"left","type":"flags.1?true"},{"name":"can_self_unmute","type":"flags.2?true"},{"name":"just_joined","type":"flags.4?true"},{"name":"versioned","type":"flags.5?true"},{"name":"min","type":"flags.8?true"},{"name":"muted_by_you","type":"flags.9?true"},{"name":"volume_by_admin","type":"flags.10?true"},{"name":"self","type":"flags.12?true"},{"name":"video_joined","type":"flags.15?true"},{"name":"peer","type":"Peer"},{"name":"date","type":"int"},{"name":"active_date","type":"flags.3?int"},{"name":"source","type":"int"},{"name":"volume","type":"flags.7?int"},{"name":"about","type":"flags.11?string"},{"name":"raise_hand_rating","type":"flags.13?long"},{"name":"video","type":"flags.6?GroupCallParticipantVideo"},{"name":"presentation","type":"flags.14?GroupCallParticipantVideo"}],"type":"GroupCallParticipant"},{"id":2658302637,"predicate":"phone.groupCall","params":[{"name":"call","type":"GroupCall"},{"name":"participants","type":"Vector"},{"name":"participants_next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.GroupCall"},{"id":4101460406,"predicate":"phone.groupParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"version","type":"int"}],"type":"phone.GroupParticipants"},{"id":813821341,"predicate":"inlineQueryPeerTypeSameBotPM","params":[],"type":"InlineQueryPeerType"},{"id":2201751468,"predicate":"inlineQueryPeerTypePM","params":[],"type":"InlineQueryPeerType"},{"id":3613836554,"predicate":"inlineQueryPeerTypeChat","params":[],"type":"InlineQueryPeerType"},{"id":1589952067,"predicate":"inlineQueryPeerTypeMegagroup","params":[],"type":"InlineQueryPeerType"},{"id":1664413338,"predicate":"inlineQueryPeerTypeBroadcast","params":[],"type":"InlineQueryPeerType"},{"id":375566091,"predicate":"messages.historyImport","params":[{"name":"id","type":"long"}],"type":"messages.HistoryImport"},{"id":1578088377,"predicate":"messages.historyImportParsed","params":[{"name":"flags","type":"#"},{"name":"pm","type":"flags.0?true"},{"name":"group","type":"flags.1?true"},{"name":"title","type":"flags.2?string"}],"type":"messages.HistoryImportParsed"},{"id":4019011180,"predicate":"messages.affectedFoundMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"},{"name":"messages","type":"Vector"}],"type":"messages.AffectedFoundMessages"},{"id":190633460,"predicate":"chatInviteImporter","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatInviteImporter"},{"id":3183881676,"predicate":"messages.exportedChatInvites","params":[{"name":"count","type":"int"},{"name":"invites","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvites"},{"id":410107472,"predicate":"messages.exportedChatInvite","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":572915951,"predicate":"messages.exportedChatInviteReplaced","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":2176233482,"predicate":"messages.chatInviteImporters","params":[{"name":"count","type":"int"},{"name":"importers","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatInviteImporters"},{"id":4075613987,"predicate":"chatAdminWithInvites","params":[{"name":"admin_id","type":"long"},{"name":"invites_count","type":"int"},{"name":"revoked_invites_count","type":"int"}],"type":"ChatAdminWithInvites"},{"id":3063640791,"predicate":"messages.chatAdminsWithInvites","params":[{"name":"admins","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatAdminsWithInvites"},{"id":2723014423,"predicate":"messages.checkedHistoryImportPeer","params":[{"name":"confirm_text","type":"string"}],"type":"messages.CheckedHistoryImportPeer"},{"id":2951045695,"predicate":"phone.joinAsPeers","params":[{"name":"peers","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.JoinAsPeers"},{"id":541839704,"predicate":"phone.exportedGroupCallInvite","params":[{"name":"link","type":"string"}],"type":"phone.ExportedGroupCallInvite"},{"id":3702593719,"predicate":"groupCallParticipantVideoSourceGroup","params":[{"name":"semantics","type":"string"},{"name":"sources","type":"Vector"}],"type":"GroupCallParticipantVideoSourceGroup"},{"id":1735736008,"predicate":"groupCallParticipantVideo","params":[{"name":"flags","type":"#"},{"name":"paused","type":"flags.0?true"},{"name":"endpoint","type":"string"},{"name":"source_groups","type":"Vector"},{"name":"audio_source","type":"flags.1?int"}],"type":"GroupCallParticipantVideo"},{"id":2248056895,"predicate":"stickers.suggestedShortName","params":[{"name":"short_name","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":795652779,"predicate":"botCommandScopeDefault","params":[],"type":"BotCommandScope"},{"id":1011811544,"predicate":"botCommandScopeUsers","params":[],"type":"BotCommandScope"},{"id":1877059713,"predicate":"botCommandScopeChats","params":[],"type":"BotCommandScope"},{"id":3114950762,"predicate":"botCommandScopeChatAdmins","params":[],"type":"BotCommandScope"},{"id":3684534653,"predicate":"botCommandScopePeer","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":1071145937,"predicate":"botCommandScopePeerAdmins","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":169026035,"predicate":"botCommandScopePeerUser","params":[{"name":"peer","type":"InputPeer"},{"name":"user_id","type":"InputUser"}],"type":"BotCommandScope"},{"id":3816265825,"predicate":"account.resetPasswordFailedWait","params":[{"name":"retry_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":3924819069,"predicate":"account.resetPasswordRequestedWait","params":[{"name":"until_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":3911636542,"predicate":"account.resetPasswordOk","params":[],"type":"account.ResetPasswordResult"},{"id":3976944691,"predicate":"chatTheme","params":[{"name":"emoticon","type":"string"},{"name":"theme","type":"Theme"},{"name":"dark_theme","type":"Theme"}],"type":"ChatTheme"},{"id":3759268292,"predicate":"account.chatThemesNotModified","params":[],"type":"account.ChatThemes"},{"id":4266442429,"predicate":"account.chatThemes","params":[{"name":"hash","type":"int"},{"name":"themes","type":"Vector"}],"type":"account.ChatThemes"},{"id":708589599,"predicate":"sponsoredMessage","params":[{"name":"flags","type":"#"},{"name":"random_id","type":"bytes"},{"name":"from_id","type":"Peer"},{"name":"start_param","type":"flags.0?string"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"SponsoredMessage"},{"id":1705297877,"predicate":"messages.sponsoredMessages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.SponsoredMessages"}],"methods":[{"id":3416209197,"method":"invokeAfterMsg","params":[{"name":"msg_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":1036301552,"method":"invokeAfterMsgs","params":[{"name":"msg_ids","type":"Vector"},{"name":"query","type":"!X"}],"type":"X"},{"id":3251461801,"method":"initConnection","params":[{"name":"flags","type":"#"},{"name":"api_id","type":"int"},{"name":"device_model","type":"string"},{"name":"system_version","type":"string"},{"name":"app_version","type":"string"},{"name":"system_lang_code","type":"string"},{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"proxy","type":"flags.0?InputClientProxy"},{"name":"params","type":"flags.1?JSONValue"},{"name":"query","type":"!X"}],"type":"X"},{"id":3667594509,"method":"invokeWithLayer","params":[{"name":"layer","type":"int"},{"name":"query","type":"!X"}],"type":"X"},{"id":3214170551,"method":"invokeWithoutUpdates","params":[{"name":"query","type":"!X"}],"type":"X"},{"id":911373810,"method":"invokeWithMessagesRange","params":[{"name":"range","type":"MessageRange"},{"name":"query","type":"!X"}],"type":"X"},{"id":2896821550,"method":"invokeWithTakeout","params":[{"name":"takeout_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":2792825935,"method":"auth.sendCode","params":[{"name":"phone_number","type":"string"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":2163139623,"method":"auth.signUp","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"auth.Authorization"},{"id":3168081281,"method":"auth.signIn","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"auth.Authorization"},{"id":1461180992,"method":"auth.logOut","params":[],"type":"Bool"},{"id":2678787354,"method":"auth.resetAuthorizations","params":[],"type":"Bool"},{"id":3854565325,"method":"auth.exportAuthorization","params":[{"name":"dc_id","type":"int"}],"type":"auth.ExportedAuthorization"},{"id":2776268205,"method":"auth.importAuthorization","params":[{"name":"id","type":"long"},{"name":"bytes","type":"bytes"}],"type":"auth.Authorization"},{"id":3453233669,"method":"auth.bindTempAuthKey","params":[{"name":"perm_auth_key_id","type":"long"},{"name":"nonce","type":"long"},{"name":"expires_at","type":"int"},{"name":"encrypted_message","type":"bytes"}],"type":"Bool"},{"id":1738800940,"method":"auth.importBotAuthorization","params":[{"name":"flags","type":"int"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"bot_auth_token","type":"string"}],"type":"auth.Authorization"},{"id":3515567382,"method":"auth.checkPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"auth.Authorization"},{"id":3633822822,"method":"auth.requestPasswordRecovery","params":[],"type":"auth.PasswordRecovery"},{"id":923364464,"method":"auth.recoverPassword","params":[{"name":"flags","type":"#"},{"name":"code","type":"string"},{"name":"new_settings","type":"flags.0?account.PasswordInputSettings"}],"type":"auth.Authorization"},{"id":1056025023,"method":"auth.resendCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"auth.SentCode"},{"id":520357240,"method":"auth.cancelCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"Bool"},{"id":2387124616,"method":"auth.dropTempAuthKeys","params":[{"name":"except_auth_keys","type":"Vector"}],"type":"Bool"},{"id":3084944894,"method":"auth.exportLoginToken","params":[{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"except_ids","type":"Vector"}],"type":"auth.LoginToken"},{"id":2511101156,"method":"auth.importLoginToken","params":[{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":3902057805,"method":"auth.acceptLoginToken","params":[{"name":"token","type":"bytes"}],"type":"Authorization"},{"id":221691769,"method":"auth.checkRecoveryPassword","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":3968205178,"method":"account.registerDevice","params":[{"name":"flags","type":"#"},{"name":"no_muted","type":"flags.0?true"},{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"app_sandbox","type":"Bool"},{"name":"secret","type":"bytes"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":1779249670,"method":"account.unregisterDevice","params":[{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":2227067795,"method":"account.updateNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"},{"name":"settings","type":"InputPeerNotifySettings"}],"type":"Bool"},{"id":313765169,"method":"account.getNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"}],"type":"PeerNotifySettings"},{"id":3682473799,"method":"account.resetNotifySettings","params":[],"type":"Bool"},{"id":2018596725,"method":"account.updateProfile","params":[{"name":"flags","type":"#"},{"name":"first_name","type":"flags.0?string"},{"name":"last_name","type":"flags.1?string"},{"name":"about","type":"flags.2?string"}],"type":"User"},{"id":1713919532,"method":"account.updateStatus","params":[{"name":"offline","type":"Bool"}],"type":"Bool"},{"id":127302966,"method":"account.getWallPapers","params":[{"name":"hash","type":"long"}],"type":"account.WallPapers"},{"id":3317316998,"method":"account.reportPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":655677548,"method":"account.checkUsername","params":[{"name":"username","type":"string"}],"type":"Bool"},{"id":1040964988,"method":"account.updateUsername","params":[{"name":"username","type":"string"}],"type":"User"},{"id":3671837008,"method":"account.getPrivacy","params":[{"name":"key","type":"InputPrivacyKey"}],"type":"account.PrivacyRules"},{"id":3388480744,"method":"account.setPrivacy","params":[{"name":"key","type":"InputPrivacyKey"},{"name":"rules","type":"Vector"}],"type":"account.PrivacyRules"},{"id":1099779595,"method":"account.deleteAccount","params":[{"name":"reason","type":"string"}],"type":"Bool"},{"id":150761757,"method":"account.getAccountTTL","params":[],"type":"AccountDaysTTL"},{"id":608323678,"method":"account.setAccountTTL","params":[{"name":"ttl","type":"AccountDaysTTL"}],"type":"Bool"},{"id":2186758885,"method":"account.sendChangePhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1891839707,"method":"account.changePhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"User"},{"id":954152242,"method":"account.updateDeviceLocked","params":[{"name":"period","type":"int"}],"type":"Bool"},{"id":3810574680,"method":"account.getAuthorizations","params":[],"type":"account.Authorizations"},{"id":3749180348,"method":"account.resetAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1418342645,"method":"account.getPassword","params":[],"type":"account.Password"},{"id":2631199481,"method":"account.getPasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"account.PasswordSettings"},{"id":2778402863,"method":"account.updatePasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"new_settings","type":"account.PasswordInputSettings"}],"type":"Bool"},{"id":457157256,"method":"account.sendConfirmPhoneCode","params":[{"name":"hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1596029123,"method":"account.confirmPhone","params":[{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1151208273,"method":"account.getTmpPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"period","type":"int"}],"type":"account.TmpPassword"},{"id":405695855,"method":"account.getWebAuthorizations","params":[],"type":"account.WebAuthorizations"},{"id":755087855,"method":"account.resetWebAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1747789204,"method":"account.resetWebAuthorizations","params":[],"type":"Bool"},{"id":2995305597,"method":"account.getAllSecureValues","params":[],"type":"Vector"},{"id":1936088002,"method":"account.getSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Vector"},{"id":2308956957,"method":"account.saveSecureValue","params":[{"name":"value","type":"InputSecureValue"},{"name":"secure_secret_id","type":"long"}],"type":"SecureValue"},{"id":3095444555,"method":"account.deleteSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Bool"},{"id":2838059386,"method":"account.getAuthorizationForm","params":[{"name":"bot_id","type":"long"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"}],"type":"account.AuthorizationForm"},{"id":4092415091,"method":"account.acceptAuthorization","params":[{"name":"bot_id","type":"long"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"},{"name":"value_hashes","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"Bool"},{"id":2778945273,"method":"account.sendVerifyPhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1305716726,"method":"account.verifyPhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1880182943,"method":"account.sendVerifyEmailCode","params":[{"name":"email","type":"string"}],"type":"account.SentEmailCode"},{"id":3971627483,"method":"account.verifyEmail","params":[{"name":"email","type":"string"},{"name":"code","type":"string"}],"type":"Bool"},{"id":4032514052,"method":"account.initTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"message_users","type":"flags.1?true"},{"name":"message_chats","type":"flags.2?true"},{"name":"message_megagroups","type":"flags.3?true"},{"name":"message_channels","type":"flags.4?true"},{"name":"files","type":"flags.5?true"},{"name":"file_max_size","type":"flags.5?int"}],"type":"account.Takeout"},{"id":489050862,"method":"account.finishTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.0?true"}],"type":"Bool"},{"id":2413762848,"method":"account.confirmPasswordEmail","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":2055154197,"method":"account.resendPasswordEmail","params":[],"type":"Bool"},{"id":3251361206,"method":"account.cancelPasswordEmail","params":[],"type":"Bool"},{"id":2668087080,"method":"account.getContactSignUpNotification","params":[],"type":"Bool"},{"id":3488890721,"method":"account.setContactSignUpNotification","params":[{"name":"silent","type":"Bool"}],"type":"Bool"},{"id":1398240377,"method":"account.getNotifyExceptions","params":[{"name":"flags","type":"#"},{"name":"compare_sound","type":"flags.1?true"},{"name":"peer","type":"flags.0?InputNotifyPeer"}],"type":"Updates"},{"id":4237155306,"method":"account.getWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"}],"type":"WallPaper"},{"id":3716494945,"method":"account.uploadWallPaper","params":[{"name":"file","type":"InputFile"},{"name":"mime_type","type":"string"},{"name":"settings","type":"WallPaperSettings"}],"type":"WallPaper"},{"id":1817860919,"method":"account.saveWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"unsave","type":"Bool"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":4276967273,"method":"account.installWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":3141244932,"method":"account.resetWallPapers","params":[],"type":"Bool"},{"id":1457130303,"method":"account.getAutoDownloadSettings","params":[],"type":"account.AutoDownloadSettings"},{"id":1995661875,"method":"account.saveAutoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"low","type":"flags.0?true"},{"name":"high","type":"flags.1?true"},{"name":"settings","type":"AutoDownloadSettings"}],"type":"Bool"},{"id":473805619,"method":"account.uploadTheme","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.0?InputFile"},{"name":"file_name","type":"string"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":2217919007,"method":"account.createTheme","params":[{"name":"flags","type":"#"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":1555261397,"method":"account.updateTheme","params":[{"name":"flags","type":"#"},{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"slug","type":"flags.0?string"},{"name":"title","type":"flags.1?string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":4065792108,"method":"account.saveTheme","params":[{"name":"theme","type":"InputTheme"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":2061776695,"method":"account.installTheme","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"format","type":"flags.1?string"},{"name":"theme","type":"flags.1?InputTheme"}],"type":"Bool"},{"id":2375906347,"method":"account.getTheme","params":[{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"document_id","type":"long"}],"type":"Theme"},{"id":1913054296,"method":"account.getThemes","params":[{"name":"format","type":"string"},{"name":"hash","type":"long"}],"type":"account.Themes"},{"id":3044323691,"method":"account.setContentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"}],"type":"Bool"},{"id":2342210990,"method":"account.getContentSettings","params":[],"type":"account.ContentSettings"},{"id":1705865692,"method":"account.getMultiWallPapers","params":[{"name":"wallpapers","type":"Vector"}],"type":"Vector"},{"id":3945483510,"method":"account.getGlobalPrivacySettings","params":[],"type":"GlobalPrivacySettings"},{"id":517647042,"method":"account.setGlobalPrivacySettings","params":[{"name":"settings","type":"GlobalPrivacySettings"}],"type":"GlobalPrivacySettings"},{"id":4203529973,"method":"account.reportProfilePhoto","params":[{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"InputPhoto"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":2466827803,"method":"account.resetPassword","params":[],"type":"account.ResetPasswordResult"},{"id":1284770294,"method":"account.declinePasswordReset","params":[],"type":"Bool"},{"id":3604422011,"method":"account.getChatThemes","params":[{"name":"hash","type":"int"}],"type":"account.ChatThemes"},{"id":227648840,"method":"users.getUsers","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":3392185777,"method":"users.getFullUser","params":[{"name":"id","type":"InputUser"}],"type":"UserFull"},{"id":2429064373,"method":"users.setSecureValueErrors","params":[{"name":"id","type":"InputUser"},{"name":"errors","type":"Vector"}],"type":"Bool"},{"id":2061264541,"method":"contacts.getContactIDs","params":[{"name":"hash","type":"long"}],"type":"Vector"},{"id":3299038190,"method":"contacts.getStatuses","params":[],"type":"Vector"},{"id":1574346258,"method":"contacts.getContacts","params":[{"name":"hash","type":"long"}],"type":"contacts.Contacts"},{"id":746589157,"method":"contacts.importContacts","params":[{"name":"contacts","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":157945344,"method":"contacts.deleteContacts","params":[{"name":"id","type":"Vector"}],"type":"Updates"},{"id":269745566,"method":"contacts.deleteByPhones","params":[{"name":"phones","type":"Vector"}],"type":"Bool"},{"id":1758204945,"method":"contacts.block","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":3198573904,"method":"contacts.unblock","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":4118557967,"method":"contacts.getBlocked","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"contacts.Blocked"},{"id":301470424,"method":"contacts.search","params":[{"name":"q","type":"string"},{"name":"limit","type":"int"}],"type":"contacts.Found"},{"id":4181511075,"method":"contacts.resolveUsername","params":[{"name":"username","type":"string"}],"type":"contacts.ResolvedPeer"},{"id":2536798390,"method":"contacts.getTopPeers","params":[{"name":"flags","type":"#"},{"name":"correspondents","type":"flags.0?true"},{"name":"bots_pm","type":"flags.1?true"},{"name":"bots_inline","type":"flags.2?true"},{"name":"phone_calls","type":"flags.3?true"},{"name":"forward_users","type":"flags.4?true"},{"name":"forward_chats","type":"flags.5?true"},{"name":"groups","type":"flags.10?true"},{"name":"channels","type":"flags.15?true"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"contacts.TopPeers"},{"id":451113900,"method":"contacts.resetTopPeerRating","params":[{"name":"category","type":"TopPeerCategory"},{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":2274703345,"method":"contacts.resetSaved","params":[],"type":"Bool"},{"id":2196890527,"method":"contacts.getSaved","params":[],"type":"Vector"},{"id":2232729050,"method":"contacts.toggleTopPeers","params":[{"name":"enabled","type":"Bool"}],"type":"Bool"},{"id":3908330448,"method":"contacts.addContact","params":[{"name":"flags","type":"#"},{"name":"add_phone_privacy_exception","type":"flags.0?true"},{"name":"id","type":"InputUser"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"phone","type":"string"}],"type":"Updates"},{"id":4164002319,"method":"contacts.acceptContact","params":[{"name":"id","type":"InputUser"}],"type":"Updates"},{"id":3544759364,"method":"contacts.getLocated","params":[{"name":"flags","type":"#"},{"name":"background","type":"flags.1?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"self_expires","type":"flags.0?int"}],"type":"Updates"},{"id":698914348,"method":"contacts.blockFromReplies","params":[{"name":"flags","type":"#"},{"name":"delete_message","type":"flags.0?true"},{"name":"delete_history","type":"flags.1?true"},{"name":"report_spam","type":"flags.2?true"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1673946374,"method":"messages.getMessages","params":[{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":2700397391,"method":"messages.getDialogs","params":[{"name":"flags","type":"#"},{"name":"exclude_pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"offset_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Dialogs"},{"id":1143203525,"method":"messages.getHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":2700978018,"method":"messages.search","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"q","type":"string"},{"name":"from_id","type":"flags.0?InputPeer"},{"name":"top_msg_id","type":"flags.1?int"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":238054714,"method":"messages.readHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedMessages"},{"id":469850889,"method":"messages.deleteHistory","params":[{"name":"flags","type":"#"},{"name":"just_clear","type":"flags.0?true"},{"name":"revoke","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedHistory"},{"id":3851326930,"method":"messages.deleteMessages","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":94983360,"method":"messages.receivedMessages","params":[{"name":"max_id","type":"int"}],"type":"Vector"},{"id":1486110434,"method":"messages.setTyping","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"action","type":"SendMessageAction"}],"type":"Bool"},{"id":1376532592,"method":"messages.sendMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":881978281,"method":"messages.sendMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"media","type":"InputMedia"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":3657360910,"method":"messages.forwardMessages","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"with_my_score","type":"flags.8?true"},{"name":"drop_author","type":"flags.11?true"},{"name":"drop_media_captions","type":"flags.12?true"},{"name":"from_peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"random_id","type":"Vector"},{"name":"to_peer","type":"InputPeer"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":3474297563,"method":"messages.reportSpam","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":913498268,"method":"messages.getPeerSettings","params":[{"name":"peer","type":"InputPeer"}],"type":"PeerSettings"},{"id":2303961934,"method":"messages.report","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1240027791,"method":"messages.getChats","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":2930772788,"method":"messages.getFullChat","params":[{"name":"chat_id","type":"long"}],"type":"messages.ChatFull"},{"id":1937260541,"method":"messages.editChatTitle","params":[{"name":"chat_id","type":"long"},{"name":"title","type":"string"}],"type":"Updates"},{"id":903730804,"method":"messages.editChatPhoto","params":[{"name":"chat_id","type":"long"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":4064760803,"method":"messages.addChatUser","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"},{"name":"fwd_limit","type":"int"}],"type":"Updates"},{"id":2719505579,"method":"messages.deleteChatUser","params":[{"name":"flags","type":"#"},{"name":"revoke_history","type":"flags.0?true"},{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"}],"type":"Updates"},{"id":164303470,"method":"messages.createChat","params":[{"name":"users","type":"Vector"},{"name":"title","type":"string"}],"type":"Updates"},{"id":651135312,"method":"messages.getDhConfig","params":[{"name":"version","type":"int"},{"name":"random_length","type":"int"}],"type":"messages.DhConfig"},{"id":4132286275,"method":"messages.requestEncryption","params":[{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1035731989,"method":"messages.acceptEncryption","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"g_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":4086541984,"method":"messages.discardEncryption","params":[{"name":"flags","type":"#"},{"name":"delete_history","type":"flags.0?true"},{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":2031374829,"method":"messages.setEncryptedTyping","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"typing","type":"Bool"}],"type":"Bool"},{"id":2135648522,"method":"messages.readEncryptedHistory","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"max_date","type":"int"}],"type":"Bool"},{"id":1157265941,"method":"messages.sendEncrypted","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1431914525,"method":"messages.sendEncryptedFile","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"},{"name":"file","type":"InputEncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":852769188,"method":"messages.sendEncryptedService","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1436924774,"method":"messages.receivedQueue","params":[{"name":"max_qts","type":"int"}],"type":"Vector"},{"id":1259113487,"method":"messages.reportEncryptedSpam","params":[{"name":"peer","type":"InputEncryptedChat"}],"type":"Bool"},{"id":916930423,"method":"messages.readMessageContents","params":[{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":3584414625,"method":"messages.getStickers","params":[{"name":"emoticon","type":"string"},{"name":"hash","type":"long"}],"type":"messages.Stickers"},{"id":3097534888,"method":"messages.getAllStickers","params":[{"name":"hash","type":"long"}],"type":"messages.AllStickers"},{"id":2338894028,"method":"messages.getWebPagePreview","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"MessageMedia"},{"id":347716823,"method":"messages.exportChatInvite","params":[{"name":"flags","type":"#"},{"name":"legacy_revoke_permanent","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"ExportedChatInvite"},{"id":1051570619,"method":"messages.checkChatInvite","params":[{"name":"hash","type":"string"}],"type":"ChatInvite"},{"id":1817183516,"method":"messages.importChatInvite","params":[{"name":"hash","type":"string"}],"type":"Updates"},{"id":639215886,"method":"messages.getStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"messages.StickerSet"},{"id":3348096096,"method":"messages.installStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"archived","type":"Bool"}],"type":"messages.StickerSetInstallResult"},{"id":4184757726,"method":"messages.uninstallStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":3873403768,"method":"messages.startBot","params":[{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"long"},{"name":"start_param","type":"string"}],"type":"Updates"},{"id":1468322785,"method":"messages.getMessagesViews","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"increment","type":"Bool"}],"type":"messages.MessageViews"},{"id":2824589762,"method":"messages.editChatAdmin","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"},{"name":"is_admin","type":"Bool"}],"type":"Bool"},{"id":2726777625,"method":"messages.migrateChat","params":[{"name":"chat_id","type":"long"}],"type":"Updates"},{"id":1271290010,"method":"messages.searchGlobal","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"q","type":"string"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":2016638777,"method":"messages.reorderStickerSets","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":864953444,"method":"messages.getDocumentByHash","params":[{"name":"sha256","type":"bytes"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":1559270965,"method":"messages.getSavedGifs","params":[{"name":"hash","type":"long"}],"type":"messages.SavedGifs"},{"id":846868683,"method":"messages.saveGif","params":[{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":1364105629,"method":"messages.getInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"geo_point","type":"flags.0?InputGeoPoint"},{"name":"query","type":"string"},{"name":"offset","type":"string"}],"type":"messages.BotResults"},{"id":3948847622,"method":"messages.setInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"private","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"next_offset","type":"flags.2?string"},{"name":"switch_pm","type":"flags.3?InlineBotSwitchPM"}],"type":"Bool"},{"id":570955184,"method":"messages.sendInlineBotResult","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"hide_via","type":"flags.11?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"random_id","type":"long"},{"name":"query_id","type":"long"},{"name":"id","type":"string"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":4255550774,"method":"messages.getMessageEditData","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"messages.MessageEditData"},{"id":1224152952,"method":"messages.editMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.15?int"}],"type":"Updates"},{"id":2203418042,"method":"messages.editInlineBotMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":2470627847,"method":"messages.getBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"game","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"data","type":"flags.0?bytes"},{"name":"password","type":"flags.2?InputCheckPasswordSRP"}],"type":"messages.BotCallbackAnswer"},{"id":3582923530,"method":"messages.setBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"Bool"},{"id":3832593661,"method":"messages.getPeerDialogs","params":[{"name":"peers","type":"Vector"}],"type":"messages.PeerDialogs"},{"id":3157909835,"method":"messages.saveDraft","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"peer","type":"InputPeer"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":1782549861,"method":"messages.getAllDrafts","params":[],"type":"Updates"},{"id":1685588756,"method":"messages.getFeaturedStickers","params":[{"name":"hash","type":"long"}],"type":"messages.FeaturedStickers"},{"id":1527873830,"method":"messages.readFeaturedStickers","params":[{"name":"id","type":"Vector"}],"type":"Bool"},{"id":2645114939,"method":"messages.getRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"hash","type":"long"}],"type":"messages.RecentStickers"},{"id":958863608,"method":"messages.saveRecentSticker","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":2308530221,"method":"messages.clearRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"}],"type":"Bool"},{"id":1475442322,"method":"messages.getArchivedStickers","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"offset_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.ArchivedStickers"},{"id":1678738104,"method":"messages.getMaskStickers","params":[{"name":"hash","type":"long"}],"type":"messages.AllStickers"},{"id":3428542412,"method":"messages.getAttachedStickers","params":[{"name":"media","type":"InputStickeredMedia"}],"type":"Vector"},{"id":2398678208,"method":"messages.setGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Updates"},{"id":363700068,"method":"messages.setInlineGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Bool"},{"id":3894568093,"method":"messages.getGameHighScores","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":258170395,"method":"messages.getInlineGameHighScores","params":[{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":3826032900,"method":"messages.getCommonChats","params":[{"name":"user_id","type":"InputUser"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.Chats"},{"id":2271179966,"method":"messages.getAllChats","params":[{"name":"except_ids","type":"Vector"}],"type":"messages.Chats"},{"id":852135825,"method":"messages.getWebPage","params":[{"name":"url","type":"string"},{"name":"hash","type":"int"}],"type":"WebPage"},{"id":2805064279,"method":"messages.toggleDialogPin","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":991616823,"method":"messages.reorderPinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"folder_id","type":"int"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":3602468338,"method":"messages.getPinnedDialogs","params":[{"name":"folder_id","type":"int"}],"type":"messages.PeerDialogs"},{"id":3858133754,"method":"messages.setBotShippingResults","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"Bool"},{"id":163765653,"method":"messages.setBotPrecheckoutResults","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"}],"type":"Bool"},{"id":1369162417,"method":"messages.uploadMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":3380473888,"method":"messages.sendScreenshotNotification","params":[{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"int"},{"name":"random_id","type":"long"}],"type":"Updates"},{"id":82946729,"method":"messages.getFavedStickers","params":[{"name":"hash","type":"long"}],"type":"messages.FavedStickers"},{"id":3120547163,"method":"messages.faveSticker","params":[{"name":"id","type":"InputDocument"},{"name":"unfave","type":"Bool"}],"type":"Bool"},{"id":1180140658,"method":"messages.getUnreadMentions","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"}],"type":"messages.Messages"},{"id":251759059,"method":"messages.readMentions","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1881817312,"method":"messages.getRecentLocations","params":[{"name":"peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":3422621899,"method":"messages.sendMultiMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"multi_media","type":"Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":1347929239,"method":"messages.uploadEncryptedFile","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"file","type":"InputEncryptedFile"}],"type":"EncryptedFile"},{"id":896555914,"method":"messages.searchStickerSets","params":[{"name":"flags","type":"#"},{"name":"exclude_featured","type":"flags.0?true"},{"name":"q","type":"string"},{"name":"hash","type":"long"}],"type":"messages.FoundStickerSets"},{"id":486505992,"method":"messages.getSplitRanges","params":[],"type":"Vector"},{"id":3263617423,"method":"messages.markDialogUnread","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":585256482,"method":"messages.getDialogUnreadMarks","params":[],"type":"Vector"},{"id":2119757468,"method":"messages.clearAllDrafts","params":[],"type":"Bool"},{"id":3534419948,"method":"messages.updatePinnedMessage","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"unpin","type":"flags.1?true"},{"name":"pm_oneside","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"Updates"},{"id":283795844,"method":"messages.sendVote","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"options","type":"Vector"}],"type":"Updates"},{"id":1941660731,"method":"messages.getPollResults","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1848369232,"method":"messages.getOnlines","params":[{"name":"peer","type":"InputPeer"}],"type":"ChatOnlines"},{"id":2167155430,"method":"messages.getStatsURL","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"params","type":"string"}],"type":"StatsURL"},{"id":3740665751,"method":"messages.editChatAbout","params":[{"name":"peer","type":"InputPeer"},{"name":"about","type":"string"}],"type":"Bool"},{"id":2777049921,"method":"messages.editChatDefaultBannedRights","params":[{"name":"peer","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":899735650,"method":"messages.getEmojiKeywords","params":[{"name":"lang_code","type":"string"}],"type":"EmojiKeywordsDifference"},{"id":352892591,"method":"messages.getEmojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"EmojiKeywordsDifference"},{"id":1318675378,"method":"messages.getEmojiKeywordsLanguages","params":[{"name":"lang_codes","type":"Vector"}],"type":"Vector"},{"id":3585149990,"method":"messages.getEmojiURL","params":[{"name":"lang_code","type":"string"}],"type":"EmojiURL"},{"id":1932455680,"method":"messages.getSearchCounters","params":[{"name":"peer","type":"InputPeer"},{"name":"filters","type":"Vector"}],"type":"Vector"},{"id":428848198,"method":"messages.requestUrlAuth","params":[{"name":"flags","type":"#"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":2972479781,"method":"messages.acceptUrlAuth","params":[{"name":"flags","type":"#"},{"name":"write_allowed","type":"flags.0?true"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":1336717624,"method":"messages.hidePeerSettingsBar","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":4111889931,"method":"messages.getScheduledHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":3183150180,"method":"messages.getScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":3174597898,"method":"messages.sendScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":1504586518,"method":"messages.deleteScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":3094231054,"method":"messages.getPollVotes","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"option","type":"flags.0?bytes"},{"name":"offset","type":"flags.1?string"},{"name":"limit","type":"int"}],"type":"messages.VotesList"},{"id":3037016042,"method":"messages.toggleStickerSets","params":[{"name":"flags","type":"#"},{"name":"uninstall","type":"flags.0?true"},{"name":"archive","type":"flags.1?true"},{"name":"unarchive","type":"flags.2?true"},{"name":"stickersets","type":"Vector"}],"type":"Bool"},{"id":4053719405,"method":"messages.getDialogFilters","params":[],"type":"Vector"},{"id":2728186924,"method":"messages.getSuggestedDialogFilters","params":[],"type":"Vector"},{"id":450142282,"method":"messages.updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Bool"},{"id":3311649252,"method":"messages.updateDialogFiltersOrder","params":[{"name":"order","type":"Vector"}],"type":"Bool"},{"id":2127598753,"method":"messages.getOldFeaturedStickers","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.FeaturedStickers"},{"id":584962828,"method":"messages.getReplies","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":1147761405,"method":"messages.getDiscussionMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"messages.DiscussionMessage"},{"id":4147227124,"method":"messages.readDiscussion","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Bool"},{"id":4029004939,"method":"messages.unpinAllMessages","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1540419152,"method":"messages.deleteChat","params":[{"name":"chat_id","type":"long"}],"type":"Bool"},{"id":4190888969,"method":"messages.deletePhoneCallHistory","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"}],"type":"messages.AffectedFoundMessages"},{"id":1140726259,"method":"messages.checkHistoryImport","params":[{"name":"import_head","type":"string"}],"type":"messages.HistoryImportParsed"},{"id":873008187,"method":"messages.initHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"file","type":"InputFile"},{"name":"media_count","type":"int"}],"type":"messages.HistoryImport"},{"id":713433234,"method":"messages.uploadImportedMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"},{"name":"file_name","type":"string"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":3023958852,"method":"messages.startHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"}],"type":"Bool"},{"id":2729812982,"method":"messages.getExportedChatInvites","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.3?true"},{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"},{"name":"offset_date","type":"flags.2?int"},{"name":"offset_link","type":"flags.2?string"},{"name":"limit","type":"int"}],"type":"messages.ExportedChatInvites"},{"id":1937010524,"method":"messages.getExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"messages.ExportedChatInvite"},{"id":48562110,"method":"messages.editExportedChatInvite","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"messages.ExportedChatInvite"},{"id":1452833749,"method":"messages.deleteRevokedExportedChatInvites","params":[{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"}],"type":"Bool"},{"id":3563365419,"method":"messages.deleteExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"Bool"},{"id":958457583,"method":"messages.getAdminsWithInvites","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.ChatAdminsWithInvites"},{"id":654013065,"method":"messages.getChatInviteImporters","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"offset_date","type":"int"},{"name":"offset_user","type":"InputUser"},{"name":"limit","type":"int"}],"type":"messages.ChatInviteImporters"},{"id":3087949796,"method":"messages.setHistoryTTL","params":[{"name":"peer","type":"InputPeer"},{"name":"period","type":"int"}],"type":"Updates"},{"id":1573261059,"method":"messages.checkHistoryImportPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.CheckedHistoryImportPeer"},{"id":3862683967,"method":"messages.setChatTheme","params":[{"name":"peer","type":"InputPeer"},{"name":"emoticon","type":"string"}],"type":"Updates"},{"id":745510839,"method":"messages.getMessageReadParticipants","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Vector"},{"id":3990128682,"method":"updates.getState","params":[],"type":"updates.State"},{"id":630429265,"method":"updates.getDifference","params":[{"name":"flags","type":"#"},{"name":"pts","type":"int"},{"name":"pts_total_limit","type":"flags.0?int"},{"name":"date","type":"int"},{"name":"qts","type":"int"}],"type":"updates.Difference"},{"id":51854712,"method":"updates.getChannelDifference","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelMessagesFilter"},{"name":"pts","type":"int"},{"name":"limit","type":"int"}],"type":"updates.ChannelDifference"},{"id":1926525996,"method":"photos.updateProfilePhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"photos.Photo"},{"id":2314407785,"method":"photos.uploadProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"photos.Photo"},{"id":2278522671,"method":"photos.deletePhotos","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":2446144168,"method":"photos.getUserPhotos","params":[{"name":"user_id","type":"InputUser"},{"name":"offset","type":"int"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"photos.Photos"},{"id":3003426337,"method":"upload.saveFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":2975505148,"method":"upload.getFile","params":[{"name":"flags","type":"#"},{"name":"precise","type":"flags.0?true"},{"name":"cdn_supported","type":"flags.1?true"},{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.File"},{"id":3732629309,"method":"upload.saveBigFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"file_total_parts","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":619086221,"method":"upload.getWebFile","params":[{"name":"location","type":"InputWebFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.WebFile"},{"id":536919235,"method":"upload.getCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.CdnFile"},{"id":2603046056,"method":"upload.reuploadCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"request_token","type":"bytes"}],"type":"Vector"},{"id":1302676017,"method":"upload.getCdnFileHashes","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":3338819889,"method":"upload.getFileHashes","params":[{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":3304659051,"method":"help.getConfig","params":[],"type":"Config"},{"id":531836966,"method":"help.getNearestDc","params":[],"type":"NearestDc"},{"id":1378703997,"method":"help.getAppUpdate","params":[{"name":"source","type":"string"}],"type":"help.AppUpdate"},{"id":1295590211,"method":"help.getInviteText","params":[],"type":"help.InviteText"},{"id":2631862477,"method":"help.getSupport","params":[],"type":"help.Support"},{"id":2417028975,"method":"help.getAppChangelog","params":[{"name":"prev_app_version","type":"string"}],"type":"Updates"},{"id":3961704397,"method":"help.setBotUpdatesStatus","params":[{"name":"pending_updates_count","type":"int"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1375900482,"method":"help.getCdnConfig","params":[],"type":"CdnConfig"},{"id":1036054804,"method":"help.getRecentMeUrls","params":[{"name":"referer","type":"string"}],"type":"help.RecentMeUrls"},{"id":749019089,"method":"help.getTermsOfServiceUpdate","params":[],"type":"help.TermsOfServiceUpdate"},{"id":4000511898,"method":"help.acceptTermsOfService","params":[{"name":"id","type":"DataJSON"}],"type":"Bool"},{"id":1072547679,"method":"help.getDeepLinkInfo","params":[{"name":"path","type":"string"}],"type":"help.DeepLinkInfo"},{"id":2559656208,"method":"help.getAppConfig","params":[],"type":"JSONValue"},{"id":1862465352,"method":"help.saveAppLog","params":[{"name":"events","type":"Vector"}],"type":"Bool"},{"id":3328290056,"method":"help.getPassportConfig","params":[{"name":"hash","type":"int"}],"type":"help.PassportConfig"},{"id":3546343212,"method":"help.getSupportName","params":[],"type":"help.SupportName"},{"id":59377875,"method":"help.getUserInfo","params":[{"name":"user_id","type":"InputUser"}],"type":"help.UserInfo"},{"id":1723407216,"method":"help.editUserInfo","params":[{"name":"user_id","type":"InputUser"},{"name":"message","type":"string"},{"name":"entities","type":"Vector"}],"type":"help.UserInfo"},{"id":3231151137,"method":"help.getPromoData","params":[],"type":"help.PromoData"},{"id":505748629,"method":"help.hidePromoData","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":4111317665,"method":"help.dismissSuggestion","params":[{"name":"peer","type":"InputPeer"},{"name":"suggestion","type":"string"}],"type":"Bool"},{"id":1935116200,"method":"help.getCountriesList","params":[{"name":"lang_code","type":"string"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":3423619383,"method":"channels.readHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":2227305806,"method":"channels.deleteMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":3507345179,"method":"channels.deleteUserHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"}],"type":"messages.AffectedHistory"},{"id":4261967888,"method":"channels.reportSpam","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":2911672867,"method":"channels.getMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":2010044880,"method":"channels.getParticipants","params":[{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelParticipantsFilter"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"channels.ChannelParticipants"},{"id":2695589062,"method":"channels.getParticipant","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"}],"type":"channels.ChannelParticipant"},{"id":176122811,"method":"channels.getChannels","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":141781513,"method":"channels.getFullChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.ChatFull"},{"id":1029681423,"method":"channels.createChannel","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.0?true"},{"name":"megagroup","type":"flags.1?true"},{"name":"for_import","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"about","type":"string"},{"name":"geo_point","type":"flags.2?InputGeoPoint"},{"name":"address","type":"flags.2?string"}],"type":"Updates"},{"id":3543959810,"method":"channels.editAdmin","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"string"}],"type":"Updates"},{"id":1450044624,"method":"channels.editTitle","params":[{"name":"channel","type":"InputChannel"},{"name":"title","type":"string"}],"type":"Updates"},{"id":4046346185,"method":"channels.editPhoto","params":[{"name":"channel","type":"InputChannel"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":283557164,"method":"channels.checkUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":890549214,"method":"channels.updateUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":615851205,"method":"channels.joinChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":4164332181,"method":"channels.leaveChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":429865580,"method":"channels.inviteToChannel","params":[{"name":"channel","type":"InputChannel"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":3222347747,"method":"channels.deleteChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":3862932971,"method":"channels.exportMessageLink","params":[{"name":"flags","type":"#"},{"name":"grouped","type":"flags.0?true"},{"name":"thread","type":"flags.1?true"},{"name":"channel","type":"InputChannel"},{"name":"id","type":"int"}],"type":"ExportedMessageLink"},{"id":527021574,"method":"channels.toggleSignatures","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":4172297903,"method":"channels.getAdminedPublicChannels","params":[{"name":"flags","type":"#"},{"name":"by_location","type":"flags.0?true"},{"name":"check_limit","type":"flags.1?true"}],"type":"messages.Chats"},{"id":2531708289,"method":"channels.editBanned","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":870184064,"method":"channels.getAdminLog","params":[{"name":"flags","type":"#"},{"name":"channel","type":"InputChannel"},{"name":"q","type":"string"},{"name":"events_filter","type":"flags.0?ChannelAdminLogEventsFilter"},{"name":"admins","type":"flags.1?Vector"},{"name":"max_id","type":"long"},{"name":"min_id","type":"long"},{"name":"limit","type":"int"}],"type":"channels.AdminLogResults"},{"id":3935085817,"method":"channels.setStickers","params":[{"name":"channel","type":"InputChannel"},{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":3937786936,"method":"channels.readMessageContents","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":2939592002,"method":"channels.deleteHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":3938171212,"method":"channels.togglePreHistoryHidden","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":2202135744,"method":"channels.getLeftChannels","params":[{"name":"offset","type":"int"}],"type":"messages.Chats"},{"id":4124758904,"method":"channels.getGroupsForDiscussion","params":[],"type":"messages.Chats"},{"id":1079520178,"method":"channels.setDiscussionGroup","params":[{"name":"broadcast","type":"InputChannel"},{"name":"group","type":"InputChannel"}],"type":"Bool"},{"id":2402864415,"method":"channels.editCreator","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"password","type":"InputCheckPasswordSRP"}],"type":"Updates"},{"id":1491484525,"method":"channels.editLocation","params":[{"name":"channel","type":"InputChannel"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"address","type":"string"}],"type":"Bool"},{"id":3990134512,"method":"channels.toggleSlowMode","params":[{"name":"channel","type":"InputChannel"},{"name":"seconds","type":"int"}],"type":"Updates"},{"id":300429806,"method":"channels.getInactiveChannels","params":[],"type":"messages.InactiveChats"},{"id":187239529,"method":"channels.convertToGigagroup","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":3199130516,"method":"channels.viewSponsoredMessage","params":[{"name":"channel","type":"InputChannel"},{"name":"random_id","type":"bytes"}],"type":"Bool"},{"id":3961589695,"method":"channels.getSponsoredMessages","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.SponsoredMessages"},{"id":2854709741,"method":"bots.sendCustomRequest","params":[{"name":"custom_method","type":"string"},{"name":"params","type":"DataJSON"}],"type":"DataJSON"},{"id":3860938573,"method":"bots.answerWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"}],"type":"Bool"},{"id":85399130,"method":"bots.setBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"},{"name":"commands","type":"Vector"}],"type":"Bool"},{"id":1032708345,"method":"bots.resetBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Bool"},{"id":3813412310,"method":"bots.getBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Vector"},{"id":2318613645,"method":"payments.getPaymentForm","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"theme_params","type":"flags.0?DataJSON"}],"type":"payments.PaymentForm"},{"id":611897804,"method":"payments.getPaymentReceipt","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"payments.PaymentReceipt"},{"id":3675271536,"method":"payments.validateRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"info","type":"PaymentRequestedInfo"}],"type":"payments.ValidatedRequestedInfo"},{"id":818134173,"method":"payments.sendPaymentForm","params":[{"name":"flags","type":"#"},{"name":"form_id","type":"long"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"requested_info_id","type":"flags.0?string"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"credentials","type":"InputPaymentCredentials"},{"name":"tip_amount","type":"flags.2?long"}],"type":"payments.PaymentResult"},{"id":578650699,"method":"payments.getSavedInfo","params":[],"type":"payments.SavedInfo"},{"id":3627905217,"method":"payments.clearSavedInfo","params":[{"name":"flags","type":"#"},{"name":"credentials","type":"flags.0?true"},{"name":"info","type":"flags.1?true"}],"type":"Bool"},{"id":779736953,"method":"payments.getBankCardData","params":[{"name":"number","type":"string"}],"type":"payments.BankCardData"},{"id":2418125671,"method":"stickers.createStickerSet","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"animated","type":"flags.1?true"},{"name":"user_id","type":"InputUser"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumb","type":"flags.2?InputDocument"},{"name":"stickers","type":"Vector"},{"name":"software","type":"flags.3?string"}],"type":"messages.StickerSet"},{"id":4151709521,"method":"stickers.removeStickerFromSet","params":[{"name":"sticker","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":4290172106,"method":"stickers.changeStickerPosition","params":[{"name":"sticker","type":"InputDocument"},{"name":"position","type":"int"}],"type":"messages.StickerSet"},{"id":2253651646,"method":"stickers.addStickerToSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"sticker","type":"InputStickerSetItem"}],"type":"messages.StickerSet"},{"id":2587250224,"method":"stickers.setStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":676017721,"method":"stickers.checkShortName","params":[{"name":"short_name","type":"string"}],"type":"Bool"},{"id":1303364867,"method":"stickers.suggestShortName","params":[{"name":"title","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":1430593449,"method":"phone.getCallConfig","params":[],"type":"DataJSON"},{"id":1124046573,"method":"phone.requestCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":1003664544,"method":"phone.acceptCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":788404002,"method":"phone.confirmCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_a","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":399855457,"method":"phone.receivedCall","params":[{"name":"peer","type":"InputPhoneCall"}],"type":"Bool"},{"id":2999697856,"method":"phone.discardCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"duration","type":"int"},{"name":"reason","type":"PhoneCallDiscardReason"},{"name":"connection_id","type":"long"}],"type":"Updates"},{"id":1508562471,"method":"phone.setCallRating","params":[{"name":"flags","type":"#"},{"name":"user_initiative","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"rating","type":"int"},{"name":"comment","type":"string"}],"type":"Updates"},{"id":662363518,"method":"phone.saveCallDebug","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"debug","type":"DataJSON"}],"type":"Bool"},{"id":4286223235,"method":"phone.sendSignalingData","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"data","type":"bytes"}],"type":"Bool"},{"id":1221445336,"method":"phone.createGroupCall","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"schedule_date","type":"flags.1?int"}],"type":"Updates"},{"id":2972909435,"method":"phone.joinGroupCall","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"video_stopped","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_as","type":"InputPeer"},{"name":"invite_hash","type":"flags.1?string"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":1342404601,"method":"phone.leaveGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"source","type":"int"}],"type":"Updates"},{"id":2067345760,"method":"phone.inviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":2054648117,"method":"phone.discardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1958458429,"method":"phone.toggleGroupCallSettings","params":[{"name":"flags","type":"#"},{"name":"reset_invite_hash","type":"flags.1?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_muted","type":"flags.0?Bool"}],"type":"Updates"},{"id":68699611,"method":"phone.getGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"limit","type":"int"}],"type":"phone.GroupCall"},{"id":3310934187,"method":"phone.getGroupParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"ids","type":"Vector"},{"name":"sources","type":"Vector"},{"name":"offset","type":"string"},{"name":"limit","type":"int"}],"type":"phone.GroupParticipants"},{"id":3046963575,"method":"phone.checkGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"sources","type":"Vector"}],"type":"Vector"},{"id":4045981448,"method":"phone.toggleGroupCallRecord","params":[{"name":"flags","type":"#"},{"name":"start","type":"flags.0?true"},{"name":"video","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"title","type":"flags.1?string"},{"name":"video_portrait","type":"flags.2?Bool"}],"type":"Updates"},{"id":2770811583,"method":"phone.editGroupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"participant","type":"InputPeer"},{"name":"muted","type":"flags.0?Bool"},{"name":"volume","type":"flags.1?int"},{"name":"raise_hand","type":"flags.2?Bool"},{"name":"video_stopped","type":"flags.3?Bool"},{"name":"video_paused","type":"flags.4?Bool"},{"name":"presentation_paused","type":"flags.5?Bool"}],"type":"Updates"},{"id":480685066,"method":"phone.editGroupCallTitle","params":[{"name":"call","type":"InputGroupCall"},{"name":"title","type":"string"}],"type":"Updates"},{"id":4017889594,"method":"phone.getGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"}],"type":"phone.JoinAsPeers"},{"id":3869926527,"method":"phone.exportGroupCallInvite","params":[{"name":"flags","type":"#"},{"name":"can_self_unmute","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"}],"type":"phone.ExportedGroupCallInvite"},{"id":563885286,"method":"phone.toggleGroupCallStartSubscription","params":[{"name":"call","type":"InputGroupCall"},{"name":"subscribed","type":"Bool"}],"type":"Updates"},{"id":1451287362,"method":"phone.startScheduledGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1465786252,"method":"phone.saveDefaultGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"},{"name":"join_as","type":"InputPeer"}],"type":"Bool"},{"id":3421137860,"method":"phone.joinGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":475058500,"method":"phone.leaveGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":4075959050,"method":"langpack.getLangPack","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackDifference"},{"id":4025104387,"method":"langpack.getStrings","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"keys","type":"Vector"}],"type":"Vector"},{"id":3449309861,"method":"langpack.getDifference","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"LangPackDifference"},{"id":1120311183,"method":"langpack.getLanguages","params":[{"name":"lang_pack","type":"string"}],"type":"Vector"},{"id":1784243458,"method":"langpack.getLanguage","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackLanguage"},{"id":1749536939,"method":"folders.editPeerFolders","params":[{"name":"folder_peers","type":"Vector"}],"type":"Updates"},{"id":472471681,"method":"folders.deleteFolder","params":[{"name":"folder_id","type":"int"}],"type":"Updates"},{"id":2873246746,"method":"stats.getBroadcastStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.BroadcastStats"},{"id":1646092192,"method":"stats.loadAsyncGraph","params":[{"name":"flags","type":"#"},{"name":"token","type":"string"},{"name":"x","type":"flags.0?long"}],"type":"StatsGraph"},{"id":3705636359,"method":"stats.getMegagroupStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.MegagroupStats"},{"id":1445996571,"method":"stats.getMessagePublicForwards","params":[{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":3068175349,"method":"stats.getMessageStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"}],"type":"stats.MessageStats"}]}, - "layer": 131 + "layer": 133 } \ No newline at end of file diff --git a/src/scripts/in/schema_additional_params.json b/src/scripts/in/schema_additional_params.json index b79b1704..9a6d59e5 100644 --- a/src/scripts/in/schema_additional_params.json +++ b/src/scripts/in/schema_additional_params.json @@ -40,22 +40,22 @@ {"name": "index_8", "type": "number"}, {"name": "index_9", "type": "number"}, {"name": "index_10", "type": "number"}, - {"name": "peerId", "type": "number"}, + {"name": "peerId", "type": "PeerId"}, {"name": "topMessage", "type": "any"}, - {"name": "migratedTo", "type": "number"} + {"name": "migratedTo", "type": "PeerId"} ] }, { "predicate": "dialogFolder", "params": [ {"name": "index", "type": "number"}, - {"name": "peerId", "type": "number"}, + {"name": "peerId", "type": "PeerId"}, {"name": "folder_id", "type": "number"} ] }, { "predicate": "dialogFilter", "params": [ {"name": "orderIndex", "type": "0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10"}, - {"name": "peerId", "type": "number"}, + {"name": "peerId", "type": "PeerId"}, {"name": "folder_id", "type": "number"} ] }, { @@ -63,15 +63,16 @@ "params": [ {"name": "mid", "type": "number"}, {"name": "deleted", "type": "boolean"}, - {"name": "peerId", "type": "number"}, - {"name": "fromId", "type": "number"}, + {"name": "peerId", "type": "PeerId"}, + {"name": "fromId", "type": "PeerId"}, + {"name": "fwdFromId", "type": "PeerId"}, {"name": "grouped_id", "type": "string"}, {"name": "random_id", "type": "string"}, {"name": "unread", "type": "true"}, {"name": "is_outgoing", "type": "true"}, {"name": "is_scheduled", "type": "true"}, {"name": "rReply", "type": "string"}, - {"name": "viaBotId", "type": "number"}, + {"name": "viaBotId", "type": "PeerId"}, {"name": "clear_history", "type": "boolean"}, {"name": "pending", "type": "boolean"}, {"name": "error", "type": "any"}, @@ -83,13 +84,17 @@ "params": [ {"name": "mid", "type": "number"}, {"name": "deleted", "type": "boolean"}, - {"name": "peerId", "type": "number"}, - {"name": "fromId", "type": "number"}, + {"name": "peerId", "type": "PeerId"}, + {"name": "fromId", "type": "PeerId"}, {"name": "unread", "type": "true"}, {"name": "is_outgoing", "type": "true"}, {"name": "rReply", "type": "string"}, - {"name": "viaBotId", "type": "number"}, - {"name": "is_single", "type": "true"} + {"name": "viaBotId", "type": "PeerId"}, + {"name": "is_single", "type": "true"}, + {"name": "pending", "type": "boolean"}, + {"name": "error", "type": "any"}, + {"name": "send", "type": "() => Promise"}, + {"name": "random_id", "type": "string"} ] }, { "predicate": "messageEmpty", @@ -179,7 +184,7 @@ }, { "predicate": "messageActionChatLeave", "params": [ - {"name": "user_id", "type": "number"} + {"name": "user_id", "type": "UserId"} ], "type": "MessageAction" }, { @@ -213,31 +218,31 @@ }, { "predicate": "messageActionChatAddUsers", "params": [ - {"name": "users", "type": "Array"} + {"name": "users", "type": "Array"} ], "type": "MessageAction" }, { "predicate": "messageActionChatJoined", "params": [ - {"name": "users", "type": "Array"} + {"name": "users", "type": "Array"} ], "type": "MessageAction" }, { "predicate": "messageActionChatReturn", "params": [ - {"name": "users", "type": "Array"} + {"name": "users", "type": "Array"} ], "type": "MessageAction" }, { "predicate": "messageActionChatJoinedYou", "params": [ - {"name": "users", "type": "Array"} + {"name": "users", "type": "Array"} ], "type": "MessageAction" }, { "predicate": "messageActionChatReturnYou", "params": [ - {"name": "users", "type": "Array"} + {"name": "users", "type": "Array"} ], "type": "MessageAction" }, { @@ -257,7 +262,7 @@ "predicate": "updateDeleteDiscussionMessages", "params": [ {"name": "messages", "type": "number[]"}, - {"name": "channel_id", "type": "number"} + {"name": "channel_id", "type": "ChatId"} ], "type": "Update" }, { @@ -269,7 +274,7 @@ }, { "predicate": "updateChannelReload", "params": [ - {"name": "channel_id", "type": "number"} + {"name": "channel_id", "type": "ChatId"} ], "type": "Update" }, { @@ -287,14 +292,14 @@ "params": [ {"name": "mid", "type": "number"}, {"name": "hidden", "type": "true"}, - {"name": "fromId", "type": "number"} + {"name": "fromId", "type": "PeerId"} ] }, { "predicate": "replyKeyboardMarkup", "params": [ {"name": "mid", "type": "number"}, {"name": "hidden", "type": "true"}, - {"name": "fromId", "type": "number"} + {"name": "fromId", "type": "PeerId"} ] }, { "predicate": "replyKeyboardForceReply", @@ -315,6 +320,13 @@ }, { "predicate": "inputMediaContact", "params": [ - {"name": "user_id", "type": "number"} + {"name": "user_id", "type": "UserId"} + ] +}, { + "predicate": "poll", + "params": [ + {"name": "rQuestion", "type": "string"}, + {"name": "rReply", "type": "string"}, + {"name": "chosenIndexes", "type": "number[]"} ] }] \ No newline at end of file diff --git a/src/scripts/out/schema.json b/src/scripts/out/schema.json index a6130660..58017e44 100644 --- a/src/scripts/out/schema.json +++ b/src/scripts/out/schema.json @@ -1 +1 @@ -{"MTProto":{"constructors":[{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":85337187,"predicate":"resPQ","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"pq","type":"bytes"},{"name":"server_public_key_fingerprints","type":"Vector"}],"type":"ResPQ"},{"id":-1443537003,"predicate":"p_q_inner_data_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"}],"type":"P_Q_inner_data"},{"id":1459478408,"predicate":"p_q_inner_data_temp_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"},{"name":"expires_in","type":"int"}],"type":"P_Q_inner_data"},{"id":-790100132,"predicate":"server_DH_params_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_answer","type":"bytes"}],"type":"Server_DH_Params"},{"id":-1249309254,"predicate":"server_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"g","type":"int"},{"name":"dh_prime","type":"bytes"},{"name":"g_a","type":"bytes"},{"name":"server_time","type":"int"}],"type":"Server_DH_inner_data"},{"id":1715713620,"predicate":"client_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"retry_id","type":"long"},{"name":"g_b","type":"bytes"}],"type":"Client_DH_Inner_Data"},{"id":1003222836,"predicate":"dh_gen_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash1","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1188831161,"predicate":"dh_gen_retry","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash2","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":-1499615742,"predicate":"dh_gen_fail","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash3","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1973679973,"predicate":"bind_auth_key_inner","params":[{"name":"nonce","type":"long"},{"name":"temp_auth_key_id","type":"long"},{"name":"perm_auth_key_id","type":"long"},{"name":"temp_session_id","type":"long"},{"name":"expires_at","type":"int"}],"type":"BindAuthKeyInner"},{"id":-212046591,"predicate":"rpc_result","params":[{"name":"req_msg_id","type":"long"},{"name":"result","type":"Object"}],"type":"RpcResult"},{"id":558156313,"predicate":"rpc_error","params":[{"name":"error_code","type":"int"},{"name":"error_message","type":"string"}],"type":"RpcError"},{"id":1579864942,"predicate":"rpc_answer_unknown","params":[],"type":"RpcDropAnswer"},{"id":-847714938,"predicate":"rpc_answer_dropped_running","params":[],"type":"RpcDropAnswer"},{"id":-1539647305,"predicate":"rpc_answer_dropped","params":[{"name":"msg_id","type":"long"},{"name":"seq_no","type":"int"},{"name":"bytes","type":"int"}],"type":"RpcDropAnswer"},{"id":155834844,"predicate":"future_salt","params":[{"name":"valid_since","type":"int"},{"name":"valid_until","type":"int"},{"name":"salt","type":"long"}],"type":"FutureSalt"},{"id":-1370486635,"predicate":"future_salts","params":[{"name":"req_msg_id","type":"long"},{"name":"now","type":"int"},{"name":"salts","type":"vector"}],"type":"FutureSalts"},{"id":880243653,"predicate":"pong","params":[{"name":"msg_id","type":"long"},{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-501201412,"predicate":"destroy_session_ok","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":1658015945,"predicate":"destroy_session_none","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1631450872,"predicate":"new_session_created","params":[{"name":"first_msg_id","type":"long"},{"name":"unique_id","type":"long"},{"name":"server_salt","type":"long"}],"type":"NewSession"},{"id":1945237724,"predicate":"msg_container","params":[{"name":"messages","type":"vector<%Message>"}],"type":"MessageContainer"},{"id":1538843921,"predicate":"message","params":[{"name":"msg_id","type":"long"},{"name":"seqno","type":"int"},{"name":"bytes","type":"int"},{"name":"body","type":"Object"}],"type":"Message"},{"id":-530561358,"predicate":"msg_copy","params":[{"name":"orig_message","type":"Message"}],"type":"MessageCopy"},{"id":812830625,"predicate":"gzip_packed","params":[{"name":"packed_data","type":"bytes"}],"type":"Object"},{"id":1658238041,"predicate":"msgs_ack","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsAck"},{"id":-1477445615,"predicate":"bad_msg_notification","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"}],"type":"BadMsgNotification"},{"id":-307542917,"predicate":"bad_server_salt","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"},{"name":"new_server_salt","type":"long"}],"type":"BadMsgNotification"},{"id":2105940488,"predicate":"msg_resend_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgResendReq"},{"id":-630588590,"predicate":"msgs_state_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsStateReq"},{"id":81704317,"predicate":"msgs_state_info","params":[{"name":"req_msg_id","type":"long"},{"name":"info","type":"bytes"}],"type":"MsgsStateInfo"},{"id":-1933520591,"predicate":"msgs_all_info","params":[{"name":"msg_ids","type":"Vector"},{"name":"info","type":"bytes"}],"type":"MsgsAllInfo"},{"id":661470918,"predicate":"msg_detailed_info","params":[{"name":"msg_id","type":"long"},{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-2137147681,"predicate":"msg_new_detailed_info","params":[{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-161422892,"predicate":"destroy_auth_key_ok","params":[],"type":"DestroyAuthKeyRes"},{"id":178201177,"predicate":"destroy_auth_key_none","params":[],"type":"DestroyAuthKeyRes"},{"id":-368010477,"predicate":"destroy_auth_key_fail","params":[],"type":"DestroyAuthKeyRes"}],"methods":[{"id":-1099002127,"method":"req_pq_multi","params":[{"name":"nonce","type":"int128"}],"type":"ResPQ"},{"id":-686627650,"method":"req_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"public_key_fingerprint","type":"long"},{"name":"encrypted_data","type":"bytes"}],"type":"Server_DH_Params"},{"id":-184262881,"method":"set_client_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_data","type":"bytes"}],"type":"Set_client_DH_params_answer"},{"id":1491380032,"method":"rpc_drop_answer","params":[{"name":"req_msg_id","type":"long"}],"type":"RpcDropAnswer"},{"id":-1188971260,"method":"get_future_salts","params":[{"name":"num","type":"int"}],"type":"FutureSalts"},{"id":2059302892,"method":"ping","params":[{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-213746804,"method":"ping_delay_disconnect","params":[{"name":"ping_id","type":"long"},{"name":"disconnect_delay","type":"int"}],"type":"Pong"},{"id":-414113498,"method":"destroy_session","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1835453025,"method":"http_wait","params":[{"name":"max_delay","type":"int"},{"name":"wait_after","type":"int"},{"name":"max_wait","type":"int"}],"type":"HttpWait"},{"id":-784117408,"method":"destroy_auth_key","params":[],"type":"DestroyAuthKeyRes"}]},"API":{"constructors":[{"id":-1132882121,"predicate":"boolFalse","params":[],"type":"Bool"},{"id":-1720552011,"predicate":"boolTrue","params":[],"type":"Bool"},{"id":1072550713,"predicate":"true","params":[],"type":"True"},{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":-994444869,"predicate":"error","params":[{"name":"code","type":"int"},{"name":"text","type":"string"}],"type":"Error"},{"id":1450380236,"predicate":"null","params":[],"type":"Null"},{"id":2134579434,"predicate":"inputPeerEmpty","params":[],"type":"InputPeer"},{"id":2107670217,"predicate":"inputPeerSelf","params":[],"type":"InputPeer"},{"id":396093539,"predicate":"inputPeerChat","params":[{"name":"chat_id","type":"int"}],"type":"InputPeer"},{"id":-1182234929,"predicate":"inputUserEmpty","params":[],"type":"InputUser"},{"id":-138301121,"predicate":"inputUserSelf","params":[],"type":"InputUser"},{"id":-208488460,"predicate":"inputPhoneContact","params":[{"name":"client_id","type":"long"},{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"InputContact"},{"id":-181407105,"predicate":"inputFile","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"},{"name":"md5_checksum","type":"string"}],"type":"InputFile"},{"id":-1771768449,"predicate":"inputMediaEmpty","params":[],"type":"InputMedia"},{"id":505969924,"predicate":"inputMediaUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":-1279654347,"predicate":"inputMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputPhoto"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-104578748,"predicate":"inputMediaGeoPoint","params":[{"name":"geo_point","type":"InputGeoPoint"}],"type":"InputMedia"},{"id":-122978821,"predicate":"inputMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"}],"type":"InputMedia"},{"id":480546647,"predicate":"inputChatPhotoEmpty","params":[],"type":"InputChatPhoto"},{"id":-968723890,"predicate":"inputChatUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"InputChatPhoto"},{"id":-1991004873,"predicate":"inputChatPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputChatPhoto"},{"id":-457104426,"predicate":"inputGeoPointEmpty","params":[],"type":"InputGeoPoint"},{"id":1210199983,"predicate":"inputGeoPoint","params":[{"name":"flags","type":"#"},{"name":"lat","type":"double"},{"name":"long","type":"double"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"InputGeoPoint"},{"id":483901197,"predicate":"inputPhotoEmpty","params":[],"type":"InputPhoto"},{"id":1001634122,"predicate":"inputPhoto","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputPhoto"},{"id":-539317279,"predicate":"inputFileLocation","params":[{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputFileLocation"},{"id":-1649296275,"predicate":"peerUser","params":[{"name":"user_id","type":"int"}],"type":"Peer"},{"id":-1160714821,"predicate":"peerChat","params":[{"name":"chat_id","type":"int"}],"type":"Peer"},{"id":-1432995067,"predicate":"storage.fileUnknown","params":[],"type":"storage.FileType"},{"id":1086091090,"predicate":"storage.filePartial","params":[],"type":"storage.FileType"},{"id":8322574,"predicate":"storage.fileJpeg","params":[],"type":"storage.FileType"},{"id":-891180321,"predicate":"storage.fileGif","params":[],"type":"storage.FileType"},{"id":172975040,"predicate":"storage.filePng","params":[],"type":"storage.FileType"},{"id":-1373745011,"predicate":"storage.filePdf","params":[],"type":"storage.FileType"},{"id":1384777335,"predicate":"storage.fileMp3","params":[],"type":"storage.FileType"},{"id":1258941372,"predicate":"storage.fileMov","params":[],"type":"storage.FileType"},{"id":-1278304028,"predicate":"storage.fileMp4","params":[],"type":"storage.FileType"},{"id":276907596,"predicate":"storage.fileWebp","params":[],"type":"storage.FileType"},{"id":537022650,"predicate":"userEmpty","params":[{"name":"id","type":"int"}],"type":"User"},{"id":1326562017,"predicate":"userProfilePhotoEmpty","params":[],"type":"UserProfilePhoto"},{"id":-2100168954,"predicate":"userProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"UserProfilePhoto"},{"id":164646985,"predicate":"userStatusEmpty","params":[],"type":"UserStatus"},{"id":-306628279,"predicate":"userStatusOnline","params":[{"name":"expires","type":"int"}],"type":"UserStatus"},{"id":9203775,"predicate":"userStatusOffline","params":[{"name":"was_online","type":"int"}],"type":"UserStatus"},{"id":-1683826688,"predicate":"chatEmpty","params":[{"name":"id","type":"int"}],"type":"Chat"},{"id":1004149726,"predicate":"chat","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"kicked","type":"flags.1?true"},{"name":"left","type":"flags.2?true"},{"name":"deactivated","type":"flags.5?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"ChatPhoto"},{"name":"participants_count","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"migrated_to","type":"flags.6?InputChannel"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"}],"type":"Chat"},{"id":120753115,"predicate":"chatForbidden","params":[{"name":"id","type":"int"},{"name":"title","type":"string"}],"type":"Chat"},{"id":-1977734781,"predicate":"chatFull","params":[{"name":"flags","type":"#"},{"name":"can_set_username","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.8?true"},{"name":"id","type":"int"},{"name":"about","type":"string"},{"name":"participants","type":"ChatParticipants"},{"name":"chat_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.13?ExportedChatInvite"},{"name":"bot_info","type":"flags.3?Vector"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"call","type":"flags.12?InputGroupCall"},{"name":"ttl_period","type":"flags.14?int"},{"name":"groupcall_default_join_as","type":"flags.15?Peer"}],"type":"ChatFull"},{"id":-925415106,"predicate":"chatParticipant","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-57668565,"predicate":"chatParticipantsForbidden","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"int"},{"name":"self_participant","type":"flags.0?ChatParticipant"}],"type":"ChatParticipants"},{"id":1061556205,"predicate":"chatParticipants","params":[{"name":"chat_id","type":"int"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"ChatParticipants"},{"id":935395612,"predicate":"chatPhotoEmpty","params":[],"type":"ChatPhoto"},{"id":476978193,"predicate":"chatPhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"ChatPhoto"},{"id":-1868117372,"predicate":"messageEmpty","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"peer_id","type":"flags.0?Peer"}],"type":"Message"},{"id":-1125940270,"predicate":"message","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"from_scheduled","type":"flags.18?true"},{"name":"legacy","type":"flags.19?true"},{"name":"edit_hide","type":"flags.21?true"},{"name":"pinned","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"message","type":"string"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"reply_markup","type":"flags.6?ReplyMarkup"},{"name":"entities","type":"flags.7?Vector"},{"name":"views","type":"flags.10?int"},{"name":"forwards","type":"flags.10?int"},{"name":"replies","type":"flags.23?MessageReplies"},{"name":"edit_date","type":"flags.15?int"},{"name":"post_author","type":"flags.16?string"},{"name":"grouped_id","type":"flags.17?long"},{"name":"restriction_reason","type":"flags.22?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":721967202,"predicate":"messageService","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"legacy","type":"flags.19?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"action","type":"MessageAction"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":1038967584,"predicate":"messageMediaEmpty","params":[],"type":"MessageMedia"},{"id":1766936791,"predicate":"messageMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"photo","type":"flags.0?Photo"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1457575028,"predicate":"messageMediaGeo","params":[{"name":"geo","type":"GeoPoint"}],"type":"MessageMedia"},{"id":-873313984,"predicate":"messageMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"user_id","type":"int"}],"type":"MessageMedia"},{"id":-1618676578,"predicate":"messageMediaUnsupported","params":[],"type":"MessageMedia"},{"id":-1230047312,"predicate":"messageActionEmpty","params":[],"type":"MessageAction"},{"id":-1503425638,"predicate":"messageActionChatCreate","params":[{"name":"title","type":"string"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1247687078,"predicate":"messageActionChatEditTitle","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":2144015272,"predicate":"messageActionChatEditPhoto","params":[{"name":"photo","type":"Photo"}],"type":"MessageAction"},{"id":-1780220945,"predicate":"messageActionChatDeletePhoto","params":[],"type":"MessageAction"},{"id":1217033015,"predicate":"messageActionChatAddUser","params":[{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1297179892,"predicate":"messageActionChatDeleteUser","params":[{"name":"user_id","type":"int"}],"type":"MessageAction"},{"id":739712882,"predicate":"dialog","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"unread_mark","type":"flags.3?true"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"unread_mentions_count","type":"int"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"pts","type":"flags.0?int"},{"name":"draft","type":"flags.1?DraftMessage"},{"name":"folder_id","type":"flags.4?int"}],"type":"Dialog"},{"id":590459437,"predicate":"photoEmpty","params":[{"name":"id","type":"long"}],"type":"Photo"},{"id":-82216347,"predicate":"photo","params":[{"name":"flags","type":"#"},{"name":"has_stickers","type":"flags.0?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"sizes","type":"Vector"},{"name":"video_sizes","type":"flags.1?Vector"},{"name":"dc_id","type":"int"}],"type":"Photo"},{"id":236446268,"predicate":"photoSizeEmpty","params":[{"name":"type","type":"string"}],"type":"PhotoSize"},{"id":1976012384,"predicate":"photoSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"}],"type":"PhotoSize"},{"id":35527382,"predicate":"photoCachedSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":286776671,"predicate":"geoPointEmpty","params":[],"type":"GeoPoint"},{"id":-1297942941,"predicate":"geoPoint","params":[{"name":"flags","type":"#"},{"name":"long","type":"double"},{"name":"lat","type":"double"},{"name":"access_hash","type":"long"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"GeoPoint"},{"id":1577067778,"predicate":"auth.sentCode","params":[{"name":"flags","type":"#"},{"name":"type","type":"auth.SentCodeType"},{"name":"phone_code_hash","type":"string"},{"name":"next_type","type":"flags.1?auth.CodeType"},{"name":"timeout","type":"flags.2?int"}],"type":"auth.SentCode"},{"id":-855308010,"predicate":"auth.authorization","params":[{"name":"flags","type":"#"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"user","type":"User"}],"type":"auth.Authorization"},{"id":-543777747,"predicate":"auth.exportedAuthorization","params":[{"name":"id","type":"int"},{"name":"bytes","type":"bytes"}],"type":"auth.ExportedAuthorization"},{"id":-1195615476,"predicate":"inputNotifyPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputNotifyPeer"},{"id":423314455,"predicate":"inputNotifyUsers","params":[],"type":"InputNotifyPeer"},{"id":1251338318,"predicate":"inputNotifyChats","params":[],"type":"InputNotifyPeer"},{"id":-1673717362,"predicate":"inputPeerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"InputPeerNotifySettings"},{"id":-1353671392,"predicate":"peerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"PeerNotifySettings"},{"id":1933519201,"predicate":"peerSettings","params":[{"name":"flags","type":"#"},{"name":"report_spam","type":"flags.0?true"},{"name":"add_contact","type":"flags.1?true"},{"name":"block_contact","type":"flags.2?true"},{"name":"share_contact","type":"flags.3?true"},{"name":"need_contacts_exception","type":"flags.4?true"},{"name":"report_geo","type":"flags.5?true"},{"name":"autoarchived","type":"flags.7?true"},{"name":"invite_members","type":"flags.8?true"},{"name":"geo_distance","type":"flags.6?int"}],"type":"PeerSettings"},{"id":-1539849235,"predicate":"wallPaper","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"pattern","type":"flags.3?true"},{"name":"dark","type":"flags.4?true"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"document","type":"Document"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":1490799288,"predicate":"inputReportReasonSpam","params":[],"type":"ReportReason"},{"id":505595789,"predicate":"inputReportReasonViolence","params":[],"type":"ReportReason"},{"id":777640226,"predicate":"inputReportReasonPornography","params":[],"type":"ReportReason"},{"id":-1376497949,"predicate":"inputReportReasonChildAbuse","params":[],"type":"ReportReason"},{"id":-1041980751,"predicate":"inputReportReasonOther","params":[],"type":"ReportReason"},{"id":328899191,"predicate":"userFull","params":[{"name":"flags","type":"#"},{"name":"blocked","type":"flags.0?true"},{"name":"phone_calls_available","type":"flags.4?true"},{"name":"phone_calls_private","type":"flags.5?true"},{"name":"can_pin_message","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.12?true"},{"name":"video_calls_available","type":"flags.13?true"},{"name":"user","type":"User"},{"name":"about","type":"flags.1?string"},{"name":"settings","type":"PeerSettings"},{"name":"profile_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"bot_info","type":"flags.3?BotInfo"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"common_chats_count","type":"int"},{"name":"folder_id","type":"flags.11?int"},{"name":"ttl_period","type":"flags.14?int"}],"type":"UserFull"},{"id":-116274796,"predicate":"contact","params":[{"name":"user_id","type":"int"},{"name":"mutual","type":"Bool"}],"type":"Contact"},{"id":-805141448,"predicate":"importedContact","params":[{"name":"user_id","type":"int"},{"name":"client_id","type":"long"}],"type":"ImportedContact"},{"id":-748155807,"predicate":"contactStatus","params":[{"name":"user_id","type":"int"},{"name":"status","type":"UserStatus"}],"type":"ContactStatus"},{"id":-1219778094,"predicate":"contacts.contactsNotModified","params":[],"type":"contacts.Contacts"},{"id":-353862078,"predicate":"contacts.contacts","params":[{"name":"contacts","type":"Vector"},{"name":"saved_count","type":"int"},{"name":"users","type":"Vector"}],"type":"contacts.Contacts"},{"id":2010127419,"predicate":"contacts.importedContacts","params":[{"name":"imported","type":"Vector"},{"name":"popular_invites","type":"Vector"},{"name":"retry_contacts","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":182326673,"predicate":"contacts.blocked","params":[{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":-513392236,"predicate":"contacts.blockedSlice","params":[{"name":"count","type":"int"},{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":364538944,"predicate":"messages.dialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":1910543603,"predicate":"messages.dialogsSlice","params":[{"name":"count","type":"int"},{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":-1938715001,"predicate":"messages.messages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":978610270,"predicate":"messages.messagesSlice","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"count","type":"int"},{"name":"next_rate","type":"flags.0?int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1694474197,"predicate":"messages.chats","params":[{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-438840932,"predicate":"messages.chatFull","params":[{"name":"full_chat","type":"ChatFull"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatFull"},{"id":-1269012015,"predicate":"messages.affectedHistory","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"}],"type":"messages.AffectedHistory"},{"id":1474492012,"predicate":"inputMessagesFilterEmpty","params":[],"type":"MessagesFilter"},{"id":-1777752804,"predicate":"inputMessagesFilterPhotos","params":[],"type":"MessagesFilter"},{"id":-1614803355,"predicate":"inputMessagesFilterVideo","params":[],"type":"MessagesFilter"},{"id":1458172132,"predicate":"inputMessagesFilterPhotoVideo","params":[],"type":"MessagesFilter"},{"id":-1629621880,"predicate":"inputMessagesFilterDocument","params":[],"type":"MessagesFilter"},{"id":2129714567,"predicate":"inputMessagesFilterUrl","params":[],"type":"MessagesFilter"},{"id":-3644025,"predicate":"inputMessagesFilterGif","params":[],"type":"MessagesFilter"},{"id":522914557,"predicate":"updateNewMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1318109142,"predicate":"updateMessageID","params":[{"name":"id","type":"int"},{"name":"random_id","type":"long"}],"type":"Update"},{"id":-1576161051,"predicate":"updateDeleteMessages","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1548249383,"predicate":"updateUserTyping","params":[{"name":"user_id","type":"int"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-2033525908,"predicate":"updateChatUserTyping","params":[{"name":"chat_id","type":"int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":125178264,"predicate":"updateChatParticipants","params":[{"name":"participants","type":"ChatParticipants"}],"type":"Update"},{"id":469489699,"predicate":"updateUserStatus","params":[{"name":"user_id","type":"int"},{"name":"status","type":"UserStatus"}],"type":"Update"},{"id":-1489818765,"predicate":"updateUserName","params":[{"name":"user_id","type":"int"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"username","type":"string"}],"type":"Update"},{"id":-1791935732,"predicate":"updateUserPhoto","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"},{"name":"photo","type":"UserProfilePhoto"},{"name":"previous","type":"Bool"}],"type":"Update"},{"id":-1519637954,"predicate":"updates.state","params":[{"name":"pts","type":"int"},{"name":"qts","type":"int"},{"name":"date","type":"int"},{"name":"seq","type":"int"},{"name":"unread_count","type":"int"}],"type":"updates.State"},{"id":1567990072,"predicate":"updates.differenceEmpty","params":[{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"updates.Difference"},{"id":16030880,"predicate":"updates.difference","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"updates.Difference"},{"id":-1459938943,"predicate":"updates.differenceSlice","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"intermediate_state","type":"updates.State"}],"type":"updates.Difference"},{"id":-484987010,"predicate":"updatesTooLong","params":[],"type":"Updates"},{"id":-84936653,"predicate":"updateShortMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"user_id","type":"int"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":290961496,"predicate":"updateShortChatMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"from_id","type":"int"},{"name":"chat_id","type":"int"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?int"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":2027216577,"predicate":"updateShort","params":[{"name":"update","type":"Update"},{"name":"date","type":"int"}],"type":"Updates"},{"id":1918567619,"predicate":"updatesCombined","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq_start","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":1957577280,"predicate":"updates","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":-1916114267,"predicate":"photos.photos","params":[{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":352657236,"predicate":"photos.photosSlice","params":[{"name":"count","type":"int"},{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":539045032,"predicate":"photos.photo","params":[{"name":"photo","type":"Photo"},{"name":"users","type":"Vector"}],"type":"photos.Photo"},{"id":157948117,"predicate":"upload.file","params":[{"name":"type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.File"},{"id":414687501,"predicate":"dcOption","params":[{"name":"flags","type":"#"},{"name":"ipv6","type":"flags.0?true"},{"name":"media_only","type":"flags.1?true"},{"name":"tcpo_only","type":"flags.2?true"},{"name":"cdn","type":"flags.3?true"},{"name":"static","type":"flags.4?true"},{"name":"id","type":"int"},{"name":"ip_address","type":"string"},{"name":"port","type":"int"},{"name":"secret","type":"flags.10?bytes"}],"type":"DcOption"},{"id":856375399,"predicate":"config","params":[{"name":"flags","type":"#"},{"name":"phonecalls_enabled","type":"flags.1?true"},{"name":"default_p2p_contacts","type":"flags.3?true"},{"name":"preload_featured_stickers","type":"flags.4?true"},{"name":"ignore_phone_entities","type":"flags.5?true"},{"name":"revoke_pm_inbox","type":"flags.6?true"},{"name":"blocked_mode","type":"flags.8?true"},{"name":"pfs_enabled","type":"flags.13?true"},{"name":"date","type":"int"},{"name":"expires","type":"int"},{"name":"test_mode","type":"Bool"},{"name":"this_dc","type":"int"},{"name":"dc_options","type":"Vector"},{"name":"dc_txt_domain_name","type":"string"},{"name":"chat_size_max","type":"int"},{"name":"megagroup_size_max","type":"int"},{"name":"forwarded_count_max","type":"int"},{"name":"online_update_period_ms","type":"int"},{"name":"offline_blur_timeout_ms","type":"int"},{"name":"offline_idle_timeout_ms","type":"int"},{"name":"online_cloud_timeout_ms","type":"int"},{"name":"notify_cloud_delay_ms","type":"int"},{"name":"notify_default_delay_ms","type":"int"},{"name":"push_chat_period_ms","type":"int"},{"name":"push_chat_limit","type":"int"},{"name":"saved_gifs_limit","type":"int"},{"name":"edit_time_limit","type":"int"},{"name":"revoke_time_limit","type":"int"},{"name":"revoke_pm_time_limit","type":"int"},{"name":"rating_e_decay","type":"int"},{"name":"stickers_recent_limit","type":"int"},{"name":"stickers_faved_limit","type":"int"},{"name":"channels_read_media_period","type":"int"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"pinned_dialogs_count_max","type":"int"},{"name":"pinned_infolder_count_max","type":"int"},{"name":"call_receive_timeout_ms","type":"int"},{"name":"call_ring_timeout_ms","type":"int"},{"name":"call_connect_timeout_ms","type":"int"},{"name":"call_packet_timeout_ms","type":"int"},{"name":"me_url_prefix","type":"string"},{"name":"autoupdate_url_prefix","type":"flags.7?string"},{"name":"gif_search_username","type":"flags.9?string"},{"name":"venue_search_username","type":"flags.10?string"},{"name":"img_search_username","type":"flags.11?string"},{"name":"static_maps_provider","type":"flags.12?string"},{"name":"caption_length_max","type":"int"},{"name":"message_length_max","type":"int"},{"name":"webfile_dc_id","type":"int"},{"name":"suggested_lang_code","type":"flags.2?string"},{"name":"lang_pack_version","type":"flags.2?int"},{"name":"base_lang_pack_version","type":"flags.2?int"}],"type":"Config"},{"id":-1910892683,"predicate":"nearestDc","params":[{"name":"country","type":"string"},{"name":"this_dc","type":"int"},{"name":"nearest_dc","type":"int"}],"type":"NearestDc"},{"id":-860107216,"predicate":"help.appUpdate","params":[{"name":"flags","type":"#"},{"name":"can_not_skip","type":"flags.0?true"},{"name":"id","type":"int"},{"name":"version","type":"string"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"document","type":"flags.1?Document"},{"name":"url","type":"flags.2?string"},{"name":"sticker","type":"flags.3?Document"}],"type":"help.AppUpdate"},{"id":-1000708810,"predicate":"help.noAppUpdate","params":[],"type":"help.AppUpdate"},{"id":415997816,"predicate":"help.inviteText","params":[{"name":"message","type":"string"}],"type":"help.InviteText"},{"id":314359194,"predicate":"updateNewEncryptedMessage","params":[{"name":"message","type":"EncryptedMessage"},{"name":"qts","type":"int"}],"type":"Update"},{"id":386986326,"predicate":"updateEncryptedChatTyping","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":-1264392051,"predicate":"updateEncryption","params":[{"name":"chat","type":"EncryptedChat"},{"name":"date","type":"int"}],"type":"Update"},{"id":956179895,"predicate":"updateEncryptedMessagesRead","params":[{"name":"chat_id","type":"int"},{"name":"max_date","type":"int"},{"name":"date","type":"int"}],"type":"Update"},{"id":-1417756512,"predicate":"encryptedChatEmpty","params":[{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":1006044124,"predicate":"encryptedChatWaiting","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"}],"type":"EncryptedChat"},{"id":1651608194,"predicate":"encryptedChatRequested","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":-94974410,"predicate":"encryptedChat","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":505183301,"predicate":"encryptedChatDiscarded","params":[{"name":"flags","type":"#"},{"name":"history_deleted","type":"flags.0?true"},{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":-247351839,"predicate":"inputEncryptedChat","params":[{"name":"chat_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedChat"},{"id":-1038136962,"predicate":"encryptedFileEmpty","params":[],"type":"EncryptedFile"},{"id":1248893260,"predicate":"encryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"EncryptedFile"},{"id":406307684,"predicate":"inputEncryptedFileEmpty","params":[],"type":"InputEncryptedFile"},{"id":1690108678,"predicate":"inputEncryptedFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":1511503333,"predicate":"inputEncryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedFile"},{"id":-182231723,"predicate":"inputEncryptedFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":-317144808,"predicate":"encryptedMessage","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"},{"name":"file","type":"EncryptedFile"}],"type":"EncryptedMessage"},{"id":594758406,"predicate":"encryptedMessageService","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"}],"type":"EncryptedMessage"},{"id":-1058912715,"predicate":"messages.dhConfigNotModified","params":[{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":740433629,"predicate":"messages.dhConfig","params":[{"name":"g","type":"int"},{"name":"p","type":"bytes"},{"name":"version","type":"int"},{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":1443858741,"predicate":"messages.sentEncryptedMessage","params":[{"name":"date","type":"int"}],"type":"messages.SentEncryptedMessage"},{"id":-1802240206,"predicate":"messages.sentEncryptedFile","params":[{"name":"date","type":"int"},{"name":"file","type":"EncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":-95482955,"predicate":"inputFileBig","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"}],"type":"InputFile"},{"id":767652808,"predicate":"inputEncryptedFileBigUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":-364179876,"predicate":"updateChatParticipantAdd","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":1851755554,"predicate":"updateChatParticipantDelete","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":-1906403213,"predicate":"updateDcOptions","params":[{"name":"dc_options","type":"Vector"}],"type":"Update"},{"id":1530447553,"predicate":"inputMediaUploadedDocument","params":[{"name":"flags","type":"#"},{"name":"nosound_video","type":"flags.3?true"},{"name":"force_file","type":"flags.4?true"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.2?InputFile"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":860303448,"predicate":"inputMediaDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputDocument"},{"name":"ttl_seconds","type":"flags.0?int"},{"name":"query","type":"flags.1?string"}],"type":"InputMedia"},{"id":-1666158377,"predicate":"messageMediaDocument","params":[{"name":"flags","type":"#"},{"name":"document","type":"flags.0?Document"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1928391342,"predicate":"inputDocumentEmpty","params":[],"type":"InputDocument"},{"id":448771445,"predicate":"inputDocument","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputDocument"},{"id":-1160743548,"predicate":"inputDocumentFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":922273905,"predicate":"documentEmpty","params":[{"name":"id","type":"long"}],"type":"Document"},{"id":512177195,"predicate":"document","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"mime_type","type":"string"},{"name":"size","type":"int"},{"name":"thumbs","type":"flags.0?Vector"},{"name":"video_thumbs","type":"flags.1?Vector"},{"name":"dc_id","type":"int"},{"name":"attributes","type":"Vector"}],"type":"Document"},{"id":398898678,"predicate":"help.support","params":[{"name":"phone_number","type":"string"},{"name":"user","type":"User"}],"type":"help.Support"},{"id":-1613493288,"predicate":"notifyPeer","params":[{"name":"peer","type":"Peer"}],"type":"NotifyPeer"},{"id":-1261946036,"predicate":"notifyUsers","params":[],"type":"NotifyPeer"},{"id":-1073230141,"predicate":"notifyChats","params":[],"type":"NotifyPeer"},{"id":-1094555409,"predicate":"updateNotifySettings","params":[{"name":"peer","type":"NotifyPeer"},{"name":"notify_settings","type":"PeerNotifySettings"}],"type":"Update"},{"id":381645902,"predicate":"sendMessageTypingAction","params":[],"type":"SendMessageAction"},{"id":-44119819,"predicate":"sendMessageCancelAction","params":[],"type":"SendMessageAction"},{"id":-1584933265,"predicate":"sendMessageRecordVideoAction","params":[],"type":"SendMessageAction"},{"id":-378127636,"predicate":"sendMessageUploadVideoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-718310409,"predicate":"sendMessageRecordAudioAction","params":[],"type":"SendMessageAction"},{"id":-212740181,"predicate":"sendMessageUploadAudioAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-774682074,"predicate":"sendMessageUploadPhotoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-1441998364,"predicate":"sendMessageUploadDocumentAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":393186209,"predicate":"sendMessageGeoLocationAction","params":[],"type":"SendMessageAction"},{"id":1653390447,"predicate":"sendMessageChooseContactAction","params":[],"type":"SendMessageAction"},{"id":-1290580579,"predicate":"contacts.found","params":[{"name":"my_results","type":"Vector"},{"name":"results","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Found"},{"id":-337352679,"predicate":"updateServiceNotification","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"inbox_date","type":"flags.1?int"},{"name":"type","type":"string"},{"name":"message","type":"string"},{"name":"media","type":"MessageMedia"},{"name":"entities","type":"Vector"}],"type":"Update"},{"id":-496024847,"predicate":"userStatusRecently","params":[],"type":"UserStatus"},{"id":129960444,"predicate":"userStatusLastWeek","params":[],"type":"UserStatus"},{"id":2011940674,"predicate":"userStatusLastMonth","params":[],"type":"UserStatus"},{"id":-298113238,"predicate":"updatePrivacy","params":[{"name":"key","type":"PrivacyKey"},{"name":"rules","type":"Vector"}],"type":"Update"},{"id":1335282456,"predicate":"inputPrivacyKeyStatusTimestamp","params":[],"type":"InputPrivacyKey"},{"id":-1137792208,"predicate":"privacyKeyStatusTimestamp","params":[],"type":"PrivacyKey"},{"id":218751099,"predicate":"inputPrivacyValueAllowContacts","params":[],"type":"InputPrivacyRule"},{"id":407582158,"predicate":"inputPrivacyValueAllowAll","params":[],"type":"InputPrivacyRule"},{"id":320652927,"predicate":"inputPrivacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":195371015,"predicate":"inputPrivacyValueDisallowContacts","params":[],"type":"InputPrivacyRule"},{"id":-697604407,"predicate":"inputPrivacyValueDisallowAll","params":[],"type":"InputPrivacyRule"},{"id":-1877932953,"predicate":"inputPrivacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-123988,"predicate":"privacyValueAllowContacts","params":[],"type":"PrivacyRule"},{"id":1698855810,"predicate":"privacyValueAllowAll","params":[],"type":"PrivacyRule"},{"id":1297858060,"predicate":"privacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":-125240806,"predicate":"privacyValueDisallowContacts","params":[],"type":"PrivacyRule"},{"id":-1955338397,"predicate":"privacyValueDisallowAll","params":[],"type":"PrivacyRule"},{"id":209668535,"predicate":"privacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":1352683077,"predicate":"account.privacyRules","params":[{"name":"rules","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.PrivacyRules"},{"id":-1194283041,"predicate":"accountDaysTTL","params":[{"name":"days","type":"int"}],"type":"AccountDaysTTL"},{"id":314130811,"predicate":"updateUserPhone","params":[{"name":"user_id","type":"int"},{"name":"phone","type":"string"}],"type":"Update"},{"id":1815593308,"predicate":"documentAttributeImageSize","params":[{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":297109817,"predicate":"documentAttributeAnimated","params":[],"type":"DocumentAttribute"},{"id":1662637586,"predicate":"documentAttributeSticker","params":[{"name":"flags","type":"#"},{"name":"mask","type":"flags.1?true"},{"name":"alt","type":"string"},{"name":"stickerset","type":"InputStickerSet"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"DocumentAttribute"},{"id":250621158,"predicate":"documentAttributeVideo","params":[{"name":"flags","type":"#"},{"name":"round_message","type":"flags.0?true"},{"name":"supports_streaming","type":"flags.1?true"},{"name":"duration","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":-1739392570,"predicate":"documentAttributeAudio","params":[{"name":"flags","type":"#"},{"name":"voice","type":"flags.10?true"},{"name":"duration","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"performer","type":"flags.1?string"},{"name":"waveform","type":"flags.2?bytes"}],"type":"DocumentAttribute"},{"id":358154344,"predicate":"documentAttributeFilename","params":[{"name":"file_name","type":"string"}],"type":"DocumentAttribute"},{"id":-244016606,"predicate":"messages.stickersNotModified","params":[],"type":"messages.Stickers"},{"id":-463889475,"predicate":"messages.stickers","params":[{"name":"hash","type":"int"},{"name":"stickers","type":"Vector"}],"type":"messages.Stickers"},{"id":313694676,"predicate":"stickerPack","params":[{"name":"emoticon","type":"string"},{"name":"documents","type":"Vector"}],"type":"StickerPack"},{"id":-395967805,"predicate":"messages.allStickersNotModified","params":[],"type":"messages.AllStickers"},{"id":-302170017,"predicate":"messages.allStickers","params":[{"name":"hash","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.AllStickers"},{"id":-1667805217,"predicate":"updateReadHistoryInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":791617983,"predicate":"updateReadHistoryOutbox","params":[{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-2066640507,"predicate":"messages.affectedMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"messages.AffectedMessages"},{"id":2139689491,"predicate":"updateWebPage","params":[{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-350980120,"predicate":"webPageEmpty","params":[{"name":"id","type":"long"}],"type":"WebPage"},{"id":-981018084,"predicate":"webPagePending","params":[{"name":"id","type":"long"},{"name":"date","type":"int"}],"type":"WebPage"},{"id":-392411726,"predicate":"webPage","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"url","type":"string"},{"name":"display_url","type":"string"},{"name":"hash","type":"int"},{"name":"type","type":"flags.0?string"},{"name":"site_name","type":"flags.1?string"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"photo","type":"flags.4?Photo"},{"name":"embed_url","type":"flags.5?string"},{"name":"embed_type","type":"flags.5?string"},{"name":"embed_width","type":"flags.6?int"},{"name":"embed_height","type":"flags.6?int"},{"name":"duration","type":"flags.7?int"},{"name":"author","type":"flags.8?string"},{"name":"document","type":"flags.9?Document"},{"name":"cached_page","type":"flags.10?Page"},{"name":"attributes","type":"flags.12?Vector"}],"type":"WebPage"},{"id":-1557277184,"predicate":"messageMediaWebPage","params":[{"name":"webpage","type":"WebPage"}],"type":"MessageMedia"},{"id":-1392388579,"predicate":"authorization","params":[{"name":"flags","type":"#"},{"name":"current","type":"flags.0?true"},{"name":"official_app","type":"flags.1?true"},{"name":"password_pending","type":"flags.2?true"},{"name":"hash","type":"long"},{"name":"device_model","type":"string"},{"name":"platform","type":"string"},{"name":"system_version","type":"string"},{"name":"api_id","type":"int"},{"name":"app_name","type":"string"},{"name":"app_version","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"country","type":"string"},{"name":"region","type":"string"}],"type":"Authorization"},{"id":307276766,"predicate":"account.authorizations","params":[{"name":"authorizations","type":"Vector"}],"type":"account.Authorizations"},{"id":408623183,"predicate":"account.password","params":[{"name":"flags","type":"#"},{"name":"has_recovery","type":"flags.0?true"},{"name":"has_secure_values","type":"flags.1?true"},{"name":"has_password","type":"flags.2?true"},{"name":"current_algo","type":"flags.2?PasswordKdfAlgo"},{"name":"srp_B","type":"flags.2?bytes"},{"name":"srp_id","type":"flags.2?long"},{"name":"hint","type":"flags.3?string"},{"name":"email_unconfirmed_pattern","type":"flags.4?string"},{"name":"new_algo","type":"PasswordKdfAlgo"},{"name":"new_secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_random","type":"bytes"},{"name":"pending_reset_date","type":"flags.5?int"}],"type":"account.Password"},{"id":-1705233435,"predicate":"account.passwordSettings","params":[{"name":"flags","type":"#"},{"name":"email","type":"flags.0?string"},{"name":"secure_settings","type":"flags.1?SecureSecretSettings"}],"type":"account.PasswordSettings"},{"id":-1036572727,"predicate":"account.passwordInputSettings","params":[{"name":"flags","type":"#"},{"name":"new_algo","type":"flags.0?PasswordKdfAlgo"},{"name":"new_password_hash","type":"flags.0?bytes"},{"name":"hint","type":"flags.0?string"},{"name":"email","type":"flags.1?string"},{"name":"new_secure_settings","type":"flags.2?SecureSecretSettings"}],"type":"account.PasswordInputSettings"},{"id":326715557,"predicate":"auth.passwordRecovery","params":[{"name":"email_pattern","type":"string"}],"type":"auth.PasswordRecovery"},{"id":-1052959727,"predicate":"inputMediaVenue","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"InputMedia"},{"id":784356159,"predicate":"messageMediaVenue","params":[{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"MessageMedia"},{"id":-1551583367,"predicate":"receivedNotifyMessage","params":[{"name":"id","type":"int"},{"name":"flags","type":"int"}],"type":"ReceivedNotifyMessage"},{"id":1847917725,"predicate":"chatInviteExported","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.0?true"},{"name":"permanent","type":"flags.5?true"},{"name":"link","type":"string"},{"name":"admin_id","type":"int"},{"name":"date","type":"int"},{"name":"start_date","type":"flags.4?int"},{"name":"expire_date","type":"flags.1?int"},{"name":"usage_limit","type":"flags.2?int"},{"name":"usage","type":"flags.3?int"}],"type":"ExportedChatInvite"},{"id":1516793212,"predicate":"chatInviteAlready","params":[{"name":"chat","type":"Chat"}],"type":"ChatInvite"},{"id":-540871282,"predicate":"chatInvite","params":[{"name":"flags","type":"#"},{"name":"channel","type":"flags.0?true"},{"name":"broadcast","type":"flags.1?true"},{"name":"public","type":"flags.2?true"},{"name":"megagroup","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"photo","type":"Photo"},{"name":"participants_count","type":"int"},{"name":"participants","type":"flags.4?Vector"}],"type":"ChatInvite"},{"id":-123931160,"predicate":"messageActionChatJoinedByLink","params":[{"name":"inviter_id","type":"int"}],"type":"MessageAction"},{"id":1757493555,"predicate":"updateReadMessagesContents","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-4838507,"predicate":"inputStickerSetEmpty","params":[],"type":"InputStickerSet"},{"id":-1645763991,"predicate":"inputStickerSetID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputStickerSet"},{"id":-2044933984,"predicate":"inputStickerSetShortName","params":[{"name":"short_name","type":"string"}],"type":"InputStickerSet"},{"id":-673242758,"predicate":"stickerSet","params":[{"name":"flags","type":"#"},{"name":"archived","type":"flags.1?true"},{"name":"official","type":"flags.2?true"},{"name":"masks","type":"flags.3?true"},{"name":"animated","type":"flags.5?true"},{"name":"installed_date","type":"flags.0?int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumbs","type":"flags.4?Vector"},{"name":"thumb_dc_id","type":"flags.4?int"},{"name":"thumb_version","type":"flags.4?int"},{"name":"count","type":"int"},{"name":"hash","type":"int"}],"type":"StickerSet"},{"id":-1240849242,"predicate":"messages.stickerSet","params":[{"name":"set","type":"StickerSet"},{"name":"packs","type":"Vector"},{"name":"documents","type":"Vector"}],"type":"messages.StickerSet"},{"id":-1820043071,"predicate":"user","params":[{"name":"flags","type":"#"},{"name":"self","type":"flags.10?true"},{"name":"contact","type":"flags.11?true"},{"name":"mutual_contact","type":"flags.12?true"},{"name":"deleted","type":"flags.13?true"},{"name":"bot","type":"flags.14?true"},{"name":"bot_chat_history","type":"flags.15?true"},{"name":"bot_nochats","type":"flags.16?true"},{"name":"verified","type":"flags.17?true"},{"name":"restricted","type":"flags.18?true"},{"name":"min","type":"flags.20?true"},{"name":"bot_inline_geo","type":"flags.21?true"},{"name":"support","type":"flags.23?true"},{"name":"scam","type":"flags.24?true"},{"name":"apply_min_photo","type":"flags.25?true"},{"name":"fake","type":"flags.26?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"flags.0?long"},{"name":"first_name","type":"flags.1?string"},{"name":"last_name","type":"flags.2?string"},{"name":"username","type":"flags.3?string"},{"name":"phone","type":"flags.4?string"},{"name":"photo","type":"flags.5?UserProfilePhoto"},{"name":"status","type":"flags.6?UserStatus"},{"name":"bot_info_version","type":"flags.14?int"},{"name":"restriction_reason","type":"flags.18?Vector"},{"name":"bot_inline_placeholder","type":"flags.19?string"},{"name":"lang_code","type":"flags.22?string"}],"type":"User"},{"id":-1032140601,"predicate":"botCommand","params":[{"name":"command","type":"string"},{"name":"description","type":"string"}],"type":"BotCommand"},{"id":-1729618630,"predicate":"botInfo","params":[{"name":"user_id","type":"int"},{"name":"description","type":"string"},{"name":"commands","type":"Vector"}],"type":"BotInfo"},{"id":-1560655744,"predicate":"keyboardButton","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":2002815875,"predicate":"keyboardButtonRow","params":[{"name":"buttons","type":"Vector"}],"type":"KeyboardButtonRow"},{"id":-1606526075,"predicate":"replyKeyboardHide","params":[{"name":"flags","type":"#"},{"name":"selective","type":"flags.2?true"}],"type":"ReplyMarkup"},{"id":-2035021048,"predicate":"replyKeyboardForceReply","params":[{"name":"flags","type":"#"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":-2049074735,"predicate":"replyKeyboardMarkup","params":[{"name":"flags","type":"#"},{"name":"resize","type":"flags.0?true"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"rows","type":"Vector"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":2072935910,"predicate":"inputPeerUser","params":[{"name":"user_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":-668391402,"predicate":"inputUser","params":[{"name":"user_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputUser"},{"id":-1148011883,"predicate":"messageEntityUnknown","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-100378723,"predicate":"messageEntityMention","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1868782349,"predicate":"messageEntityHashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1827637959,"predicate":"messageEntityBotCommand","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1859134776,"predicate":"messageEntityUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1692693954,"predicate":"messageEntityEmail","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1117713463,"predicate":"messageEntityBold","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-2106619040,"predicate":"messageEntityItalic","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":681706865,"predicate":"messageEntityCode","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1938967520,"predicate":"messageEntityPre","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"language","type":"string"}],"type":"MessageEntity"},{"id":1990644519,"predicate":"messageEntityTextUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"url","type":"string"}],"type":"MessageEntity"},{"id":-1877614335,"predicate":"updateShortSentMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":-292807034,"predicate":"inputChannelEmpty","params":[],"type":"InputChannel"},{"id":-1343524562,"predicate":"inputChannel","params":[{"name":"channel_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputChannel"},{"id":-1109531342,"predicate":"peerChannel","params":[{"name":"channel_id","type":"int"}],"type":"Peer"},{"id":548253432,"predicate":"inputPeerChannel","params":[{"name":"channel_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":-753232354,"predicate":"channel","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"left","type":"flags.2?true"},{"name":"broadcast","type":"flags.5?true"},{"name":"verified","type":"flags.7?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"restricted","type":"flags.9?true"},{"name":"signatures","type":"flags.11?true"},{"name":"min","type":"flags.12?true"},{"name":"scam","type":"flags.19?true"},{"name":"has_link","type":"flags.20?true"},{"name":"has_geo","type":"flags.21?true"},{"name":"slowmode_enabled","type":"flags.22?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"fake","type":"flags.25?true"},{"name":"gigagroup","type":"flags.26?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"flags.13?long"},{"name":"title","type":"string"},{"name":"username","type":"flags.6?string"},{"name":"photo","type":"ChatPhoto"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"restriction_reason","type":"flags.9?Vector"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"banned_rights","type":"flags.15?ChatBannedRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"},{"name":"participants_count","type":"flags.17?int"}],"type":"Chat"},{"id":681420594,"predicate":"channelForbidden","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.5?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"until_date","type":"flags.16?int"}],"type":"Chat"},{"id":2131196633,"predicate":"contacts.resolvedPeer","params":[{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ResolvedPeer"},{"id":1418477459,"predicate":"channelFull","params":[{"name":"flags","type":"#"},{"name":"can_view_participants","type":"flags.3?true"},{"name":"can_set_username","type":"flags.6?true"},{"name":"can_set_stickers","type":"flags.7?true"},{"name":"hidden_prehistory","type":"flags.10?true"},{"name":"can_set_location","type":"flags.16?true"},{"name":"has_scheduled","type":"flags.19?true"},{"name":"can_view_stats","type":"flags.20?true"},{"name":"blocked","type":"flags.22?true"},{"name":"id","type":"int"},{"name":"about","type":"string"},{"name":"participants_count","type":"flags.0?int"},{"name":"admins_count","type":"flags.1?int"},{"name":"kicked_count","type":"flags.2?int"},{"name":"banned_count","type":"flags.2?int"},{"name":"online_count","type":"flags.13?int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"chat_photo","type":"Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.23?ExportedChatInvite"},{"name":"bot_info","type":"Vector"},{"name":"migrated_from_chat_id","type":"flags.4?int"},{"name":"migrated_from_max_id","type":"flags.4?int"},{"name":"pinned_msg_id","type":"flags.5?int"},{"name":"stickerset","type":"flags.8?StickerSet"},{"name":"available_min_id","type":"flags.9?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"linked_chat_id","type":"flags.14?int"},{"name":"location","type":"flags.15?ChannelLocation"},{"name":"slowmode_seconds","type":"flags.17?int"},{"name":"slowmode_next_send_date","type":"flags.18?int"},{"name":"stats_dc","type":"flags.12?int"},{"name":"pts","type":"int"},{"name":"call","type":"flags.21?InputGroupCall"},{"name":"ttl_period","type":"flags.24?int"},{"name":"pending_suggestions","type":"flags.25?Vector"},{"name":"groupcall_default_join_as","type":"flags.26?Peer"}],"type":"ChatFull"},{"id":182649427,"predicate":"messageRange","params":[{"name":"min_id","type":"int"},{"name":"max_id","type":"int"}],"type":"MessageRange"},{"id":1682413576,"predicate":"messages.channelMessages","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"pts","type":"int"},{"name":"count","type":"int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":-1781355374,"predicate":"messageActionChannelCreate","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":-352032773,"predicate":"updateChannelTooLong","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"pts","type":"flags.0?int"}],"type":"Update"},{"id":-1227598250,"predicate":"updateChannel","params":[{"name":"channel_id","type":"int"}],"type":"Update"},{"id":1656358105,"predicate":"updateNewChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":856380452,"predicate":"updateReadChannelInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"channel_id","type":"int"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"}],"type":"Update"},{"id":-1015733815,"predicate":"updateDeleteChannelMessages","params":[{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1734268085,"predicate":"updateChannelMessageViews","params":[{"name":"channel_id","type":"int"},{"name":"id","type":"int"},{"name":"views","type":"int"}],"type":"Update"},{"id":1041346555,"predicate":"updates.channelDifferenceEmpty","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"}],"type":"updates.ChannelDifference"},{"id":-1531132162,"predicate":"updates.channelDifferenceTooLong","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"timeout","type":"flags.1?int"},{"name":"dialog","type":"Dialog"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":543450958,"predicate":"updates.channelDifference","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"},{"name":"new_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":-1798033689,"predicate":"channelMessagesFilterEmpty","params":[],"type":"ChannelMessagesFilter"},{"id":-847783593,"predicate":"channelMessagesFilter","params":[{"name":"flags","type":"#"},{"name":"exclude_new_messages","type":"flags.1?true"},{"name":"ranges","type":"Vector"}],"type":"ChannelMessagesFilter"},{"id":367766557,"predicate":"channelParticipant","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":-1557620115,"predicate":"channelParticipantSelf","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":1149094475,"predicate":"channelParticipantCreator","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.0?string"}],"type":"ChannelParticipant"},{"id":-566281095,"predicate":"channelParticipantsRecent","params":[],"type":"ChannelParticipantsFilter"},{"id":-1268741783,"predicate":"channelParticipantsAdmins","params":[],"type":"ChannelParticipantsFilter"},{"id":-1548400251,"predicate":"channelParticipantsKicked","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-1699676497,"predicate":"channels.channelParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipants"},{"id":-541588713,"predicate":"channels.channelParticipant","params":[{"name":"participant","type":"ChannelParticipant"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipant"},{"id":-636267638,"predicate":"chatParticipantCreator","params":[{"name":"user_id","type":"int"}],"type":"ChatParticipant"},{"id":-489233354,"predicate":"chatParticipantAdmin","params":[{"name":"user_id","type":"int"},{"name":"inviter_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-1232070311,"predicate":"updateChatParticipantAdmin","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"int"},{"name":"is_admin","type":"Bool"},{"name":"version","type":"int"}],"type":"Update"},{"id":1371385889,"predicate":"messageActionChatMigrateTo","params":[{"name":"channel_id","type":"int"}],"type":"MessageAction"},{"id":-1336546578,"predicate":"messageActionChannelMigrateFrom","params":[{"name":"title","type":"string"},{"name":"chat_id","type":"int"}],"type":"MessageAction"},{"id":-1328445861,"predicate":"channelParticipantsBots","params":[],"type":"ChannelParticipantsFilter"},{"id":2013922064,"predicate":"help.termsOfService","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"id","type":"DataJSON"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"min_age_confirm","type":"flags.1?int"}],"type":"help.TermsOfService"},{"id":1753886890,"predicate":"updateNewStickerSet","params":[{"name":"stickerset","type":"messages.StickerSet"}],"type":"Update"},{"id":196268545,"predicate":"updateStickerSetsOrder","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Update"},{"id":1135492588,"predicate":"updateStickerSets","params":[],"type":"Update"},{"id":-402498398,"predicate":"messages.savedGifsNotModified","params":[],"type":"messages.SavedGifs"},{"id":772213157,"predicate":"messages.savedGifs","params":[{"name":"hash","type":"int"},{"name":"gifs","type":"Vector"}],"type":"messages.SavedGifs"},{"id":-1821035490,"predicate":"updateSavedGifs","params":[],"type":"Update"},{"id":864077702,"predicate":"inputBotInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1036876423,"predicate":"inputBotInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-2000710887,"predicate":"inputBotInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?InputWebDocument"},{"name":"content","type":"flags.5?InputWebDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1984755728,"predicate":"botInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1937807902,"predicate":"botInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":295067450,"predicate":"botInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?WebDocument"},{"name":"content","type":"flags.5?WebDocument"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":-1803769784,"predicate":"messages.botResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"query_id","type":"long"},{"name":"next_offset","type":"flags.1?string"},{"name":"switch_pm","type":"flags.2?InlineBotSwitchPM"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"users","type":"Vector"}],"type":"messages.BotResults"},{"id":1059076315,"predicate":"updateBotInlineQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"peer_type","type":"flags.1?InlineQueryPeerType"},{"name":"offset","type":"string"}],"type":"Update"},{"id":239663460,"predicate":"updateBotInlineSend","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"int"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"id","type":"string"},{"name":"msg_id","type":"flags.1?InputBotInlineMessageID"}],"type":"Update"},{"id":1358283666,"predicate":"inputMessagesFilterVoice","params":[],"type":"MessagesFilter"},{"id":928101534,"predicate":"inputMessagesFilterMusic","params":[],"type":"MessagesFilter"},{"id":-1107622874,"predicate":"inputPrivacyKeyChatInvite","params":[],"type":"InputPrivacyKey"},{"id":1343122938,"predicate":"privacyKeyChatInvite","params":[],"type":"PrivacyKey"},{"id":1571494644,"predicate":"exportedMessageLink","params":[{"name":"link","type":"string"},{"name":"html","type":"string"}],"type":"ExportedMessageLink"},{"id":1601666510,"predicate":"messageFwdHeader","params":[{"name":"flags","type":"#"},{"name":"imported","type":"flags.7?true"},{"name":"from_id","type":"flags.0?Peer"},{"name":"from_name","type":"flags.5?string"},{"name":"date","type":"int"},{"name":"channel_post","type":"flags.2?int"},{"name":"post_author","type":"flags.3?string"},{"name":"saved_from_peer","type":"flags.4?Peer"},{"name":"saved_from_msg_id","type":"flags.4?int"},{"name":"psa_type","type":"flags.6?string"}],"type":"MessageFwdHeader"},{"id":457133559,"predicate":"updateEditChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1799538451,"predicate":"messageActionPinMessage","params":[],"type":"MessageAction"},{"id":1923290508,"predicate":"auth.codeTypeSms","params":[],"type":"auth.CodeType"},{"id":1948046307,"predicate":"auth.codeTypeCall","params":[],"type":"auth.CodeType"},{"id":577556219,"predicate":"auth.codeTypeFlashCall","params":[],"type":"auth.CodeType"},{"id":1035688326,"predicate":"auth.sentCodeTypeApp","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1073693790,"predicate":"auth.sentCodeTypeSms","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":1398007207,"predicate":"auth.sentCodeTypeCall","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1425815847,"predicate":"auth.sentCodeTypeFlashCall","params":[{"name":"pattern","type":"string"}],"type":"auth.SentCodeType"},{"id":629866245,"predicate":"keyboardButtonUrl","params":[{"name":"text","type":"string"},{"name":"url","type":"string"}],"type":"KeyboardButton"},{"id":901503851,"predicate":"keyboardButtonCallback","params":[{"name":"flags","type":"#"},{"name":"requires_password","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"data","type":"bytes"}],"type":"KeyboardButton"},{"id":-1318425559,"predicate":"keyboardButtonRequestPhone","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-59151553,"predicate":"keyboardButtonRequestGeoLocation","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":90744648,"predicate":"keyboardButtonSwitchInline","params":[{"name":"flags","type":"#"},{"name":"same_peer","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"query","type":"string"}],"type":"KeyboardButton"},{"id":1218642516,"predicate":"replyInlineMarkup","params":[{"name":"rows","type":"Vector"}],"type":"ReplyMarkup"},{"id":911761060,"predicate":"messages.botCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"has_url","type":"flags.3?true"},{"name":"native_ui","type":"flags.4?true"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"messages.BotCallbackAnswer"},{"id":-415938591,"predicate":"updateBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":649453030,"predicate":"messages.messageEditData","params":[{"name":"flags","type":"#"},{"name":"caption","type":"flags.0?true"}],"type":"messages.MessageEditData"},{"id":-469536605,"predicate":"updateEditMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1768777083,"predicate":"inputBotInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1098628881,"predicate":"inputBotInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-1494368259,"predicate":"inputBotInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":85477117,"predicate":"botInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1970903652,"predicate":"botInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":416402882,"predicate":"botInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1462213465,"predicate":"inputBotInlineResultPhoto","params":[{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"InputPhoto"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":-459324,"predicate":"inputBotInlineResultDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"document","type":"InputDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":400266251,"predicate":"botInlineMediaResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"flags.0?Photo"},{"name":"document","type":"flags.1?Document"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":-1995686519,"predicate":"inputBotInlineMessageID","params":[{"name":"dc_id","type":"int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":-103646630,"predicate":"updateInlineBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"msg_id","type":"InputBotInlineMessageID"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":1008755359,"predicate":"inlineBotSwitchPM","params":[{"name":"text","type":"string"},{"name":"start_param","type":"string"}],"type":"InlineBotSwitchPM"},{"id":863093588,"predicate":"messages.peerDialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"messages.PeerDialogs"},{"id":-305282981,"predicate":"topPeer","params":[{"name":"peer","type":"Peer"},{"name":"rating","type":"double"}],"type":"TopPeer"},{"id":-1419371685,"predicate":"topPeerCategoryBotsPM","params":[],"type":"TopPeerCategory"},{"id":344356834,"predicate":"topPeerCategoryBotsInline","params":[],"type":"TopPeerCategory"},{"id":104314861,"predicate":"topPeerCategoryCorrespondents","params":[],"type":"TopPeerCategory"},{"id":-1122524854,"predicate":"topPeerCategoryGroups","params":[],"type":"TopPeerCategory"},{"id":371037736,"predicate":"topPeerCategoryChannels","params":[],"type":"TopPeerCategory"},{"id":-75283823,"predicate":"topPeerCategoryPeers","params":[{"name":"category","type":"TopPeerCategory"},{"name":"count","type":"int"},{"name":"peers","type":"Vector"}],"type":"TopPeerCategoryPeers"},{"id":-567906571,"predicate":"contacts.topPeersNotModified","params":[],"type":"contacts.TopPeers"},{"id":1891070632,"predicate":"contacts.topPeers","params":[{"name":"categories","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.TopPeers"},{"id":892193368,"predicate":"messageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"int"}],"type":"MessageEntity"},{"id":546203849,"predicate":"inputMessageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"MessageEntity"},{"id":975236280,"predicate":"inputMessagesFilterChatPhotos","params":[],"type":"MessagesFilter"},{"id":634833351,"predicate":"updateReadChannelOutbox","params":[{"name":"channel_id","type":"int"},{"name":"max_id","type":"int"}],"type":"Update"},{"id":-299124375,"predicate":"updateDraftMessage","params":[{"name":"peer","type":"Peer"},{"name":"draft","type":"DraftMessage"}],"type":"Update"},{"id":453805082,"predicate":"draftMessageEmpty","params":[{"name":"flags","type":"#"},{"name":"date","type":"flags.0?int"}],"type":"DraftMessage"},{"id":-40996577,"predicate":"draftMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"},{"name":"date","type":"int"}],"type":"DraftMessage"},{"id":-1615153660,"predicate":"messageActionHistoryClear","params":[],"type":"MessageAction"},{"id":-958657434,"predicate":"messages.featuredStickersNotModified","params":[{"name":"count","type":"int"}],"type":"messages.FeaturedStickers"},{"id":-1230257343,"predicate":"messages.featuredStickers","params":[{"name":"hash","type":"int"},{"name":"count","type":"int"},{"name":"sets","type":"Vector"},{"name":"unread","type":"Vector"}],"type":"messages.FeaturedStickers"},{"id":1461528386,"predicate":"updateReadFeaturedStickers","params":[],"type":"Update"},{"id":186120336,"predicate":"messages.recentStickersNotModified","params":[],"type":"messages.RecentStickers"},{"id":586395571,"predicate":"messages.recentStickers","params":[{"name":"hash","type":"int"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"},{"name":"dates","type":"Vector"}],"type":"messages.RecentStickers"},{"id":-1706939360,"predicate":"updateRecentStickers","params":[],"type":"Update"},{"id":1338747336,"predicate":"messages.archivedStickers","params":[{"name":"count","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.ArchivedStickers"},{"id":946083368,"predicate":"messages.stickerSetInstallResultSuccess","params":[],"type":"messages.StickerSetInstallResult"},{"id":904138920,"predicate":"messages.stickerSetInstallResultArchive","params":[{"name":"sets","type":"Vector"}],"type":"messages.StickerSetInstallResult"},{"id":1678812626,"predicate":"stickerSetCovered","params":[{"name":"set","type":"StickerSet"},{"name":"cover","type":"Document"}],"type":"StickerSetCovered"},{"id":-1574314746,"predicate":"updateConfig","params":[],"type":"Update"},{"id":861169551,"predicate":"updatePtsChanged","params":[],"type":"Update"},{"id":-440664550,"predicate":"inputMediaPhotoExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-78455655,"predicate":"inputMediaDocumentExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":872932635,"predicate":"stickerSetMultiCovered","params":[{"name":"set","type":"StickerSet"},{"name":"covers","type":"Vector"}],"type":"StickerSetCovered"},{"id":-1361650766,"predicate":"maskCoords","params":[{"name":"n","type":"int"},{"name":"x","type":"double"},{"name":"y","type":"double"},{"name":"zoom","type":"double"}],"type":"MaskCoords"},{"id":-1744710921,"predicate":"documentAttributeHasStickers","params":[],"type":"DocumentAttribute"},{"id":1251549527,"predicate":"inputStickeredMediaPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputStickeredMedia"},{"id":70813275,"predicate":"inputStickeredMediaDocument","params":[{"name":"id","type":"InputDocument"}],"type":"InputStickeredMedia"},{"id":-1107729093,"predicate":"game","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"short_name","type":"string"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"Photo"},{"name":"document","type":"flags.0?Document"}],"type":"Game"},{"id":1336154098,"predicate":"inputBotInlineResultGame","params":[{"name":"id","type":"string"},{"name":"short_name","type":"string"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1262639204,"predicate":"inputBotInlineMessageGame","params":[{"name":"flags","type":"#"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-38694904,"predicate":"messageMediaGame","params":[{"name":"game","type":"Game"}],"type":"MessageMedia"},{"id":-750828557,"predicate":"inputMediaGame","params":[{"name":"id","type":"InputGame"}],"type":"InputMedia"},{"id":53231223,"predicate":"inputGameID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGame"},{"id":-1020139510,"predicate":"inputGameShortName","params":[{"name":"bot_id","type":"InputUser"},{"name":"short_name","type":"string"}],"type":"InputGame"},{"id":1358175439,"predicate":"keyboardButtonGame","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-1834538890,"predicate":"messageActionGameScore","params":[{"name":"game_id","type":"long"},{"name":"score","type":"int"}],"type":"MessageAction"},{"id":1493171408,"predicate":"highScore","params":[{"name":"pos","type":"int"},{"name":"user_id","type":"int"},{"name":"score","type":"int"}],"type":"HighScore"},{"id":-1707344487,"predicate":"messages.highScores","params":[{"name":"scores","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.HighScores"},{"id":1258196845,"predicate":"updates.differenceTooLong","params":[{"name":"pts","type":"int"}],"type":"updates.Difference"},{"id":1081547008,"predicate":"updateChannelWebPage","params":[{"name":"channel_id","type":"int"},{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1663561404,"predicate":"messages.chatsSlice","params":[{"name":"count","type":"int"},{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-599948721,"predicate":"textEmpty","params":[],"type":"RichText"},{"id":1950782688,"predicate":"textPlain","params":[{"name":"text","type":"string"}],"type":"RichText"},{"id":1730456516,"predicate":"textBold","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-653089380,"predicate":"textItalic","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1054465340,"predicate":"textUnderline","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1678197867,"predicate":"textStrike","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1816074681,"predicate":"textFixed","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1009288385,"predicate":"textUrl","params":[{"name":"text","type":"RichText"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"}],"type":"RichText"},{"id":-564523562,"predicate":"textEmail","params":[{"name":"text","type":"RichText"},{"name":"email","type":"string"}],"type":"RichText"},{"id":2120376535,"predicate":"textConcat","params":[{"name":"texts","type":"Vector"}],"type":"RichText"},{"id":324435594,"predicate":"pageBlockUnsupported","params":[],"type":"PageBlock"},{"id":1890305021,"predicate":"pageBlockTitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1879401953,"predicate":"pageBlockSubtitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1162877472,"predicate":"pageBlockAuthorDate","params":[{"name":"author","type":"RichText"},{"name":"published_date","type":"int"}],"type":"PageBlock"},{"id":-1076861716,"predicate":"pageBlockHeader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-248793375,"predicate":"pageBlockSubheader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":1182402406,"predicate":"pageBlockParagraph","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1066346178,"predicate":"pageBlockPreformatted","params":[{"name":"text","type":"RichText"},{"name":"language","type":"string"}],"type":"PageBlock"},{"id":1216809369,"predicate":"pageBlockFooter","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-618614392,"predicate":"pageBlockDivider","params":[],"type":"PageBlock"},{"id":-837994576,"predicate":"pageBlockAnchor","params":[{"name":"name","type":"string"}],"type":"PageBlock"},{"id":-454524911,"predicate":"pageBlockList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":641563686,"predicate":"pageBlockBlockquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":1329878739,"predicate":"pageBlockPullquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":391759200,"predicate":"pageBlockPhoto","params":[{"name":"flags","type":"#"},{"name":"photo_id","type":"long"},{"name":"caption","type":"PageCaption"},{"name":"url","type":"flags.0?string"},{"name":"webpage_id","type":"flags.0?long"}],"type":"PageBlock"},{"id":2089805750,"predicate":"pageBlockVideo","params":[{"name":"flags","type":"#"},{"name":"autoplay","type":"flags.0?true"},{"name":"loop","type":"flags.1?true"},{"name":"video_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":972174080,"predicate":"pageBlockCover","params":[{"name":"cover","type":"PageBlock"}],"type":"PageBlock"},{"id":-1468953147,"predicate":"pageBlockEmbed","params":[{"name":"flags","type":"#"},{"name":"full_width","type":"flags.0?true"},{"name":"allow_scrolling","type":"flags.3?true"},{"name":"url","type":"flags.1?string"},{"name":"html","type":"flags.2?string"},{"name":"poster_photo_id","type":"flags.4?long"},{"name":"w","type":"flags.5?int"},{"name":"h","type":"flags.5?int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-229005301,"predicate":"pageBlockEmbedPost","params":[{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"author_photo_id","type":"long"},{"name":"author","type":"string"},{"name":"date","type":"int"},{"name":"blocks","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1705048653,"predicate":"pageBlockCollage","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":52401552,"predicate":"pageBlockSlideshow","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1930545681,"predicate":"webPageNotModified","params":[{"name":"flags","type":"#"},{"name":"cached_page_views","type":"flags.0?int"}],"type":"WebPage"},{"id":-88417185,"predicate":"inputPrivacyKeyPhoneCall","params":[],"type":"InputPrivacyKey"},{"id":1030105979,"predicate":"privacyKeyPhoneCall","params":[],"type":"PrivacyKey"},{"id":-580219064,"predicate":"sendMessageGamePlayAction","params":[],"type":"SendMessageAction"},{"id":-2048646399,"predicate":"phoneCallDiscardReasonMissed","params":[],"type":"PhoneCallDiscardReason"},{"id":-527056480,"predicate":"phoneCallDiscardReasonDisconnect","params":[],"type":"PhoneCallDiscardReason"},{"id":1471006352,"predicate":"phoneCallDiscardReasonHangup","params":[],"type":"PhoneCallDiscardReason"},{"id":-84416311,"predicate":"phoneCallDiscardReasonBusy","params":[],"type":"PhoneCallDiscardReason"},{"id":1852826908,"predicate":"updateDialogPinned","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-99664734,"predicate":"updatePinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.1?int"},{"name":"order","type":"flags.0?Vector"}],"type":"Update"},{"id":2104790276,"predicate":"dataJSON","params":[{"name":"data","type":"string"}],"type":"DataJSON"},{"id":-2095595325,"predicate":"updateBotWebhookJSON","params":[{"name":"data","type":"DataJSON"}],"type":"Update"},{"id":-1684914010,"predicate":"updateBotWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"},{"name":"timeout","type":"int"}],"type":"Update"},{"id":-886477832,"predicate":"labeledPrice","params":[{"name":"label","type":"string"},{"name":"amount","type":"long"}],"type":"LabeledPrice"},{"id":215516896,"predicate":"invoice","params":[{"name":"flags","type":"#"},{"name":"test","type":"flags.0?true"},{"name":"name_requested","type":"flags.1?true"},{"name":"phone_requested","type":"flags.2?true"},{"name":"email_requested","type":"flags.3?true"},{"name":"shipping_address_requested","type":"flags.4?true"},{"name":"flexible","type":"flags.5?true"},{"name":"phone_to_provider","type":"flags.6?true"},{"name":"email_to_provider","type":"flags.7?true"},{"name":"currency","type":"string"},{"name":"prices","type":"Vector"},{"name":"max_tip_amount","type":"flags.8?long"},{"name":"suggested_tip_amounts","type":"flags.8?Vector"}],"type":"Invoice"},{"id":-646342540,"predicate":"inputMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"start_param","type":"flags.1?string"}],"type":"InputMedia"},{"id":-368917890,"predicate":"paymentCharge","params":[{"name":"id","type":"string"},{"name":"provider_charge_id","type":"string"}],"type":"PaymentCharge"},{"id":-1892568281,"predicate":"messageActionPaymentSentMe","params":[{"name":"flags","type":"#"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"charge","type":"PaymentCharge"}],"type":"MessageAction"},{"id":-2074799289,"predicate":"messageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"receipt_msg_id","type":"flags.2?int"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"start_param","type":"string"}],"type":"MessageMedia"},{"id":512535275,"predicate":"postAddress","params":[{"name":"street_line1","type":"string"},{"name":"street_line2","type":"string"},{"name":"city","type":"string"},{"name":"state","type":"string"},{"name":"country_iso2","type":"string"},{"name":"post_code","type":"string"}],"type":"PostAddress"},{"id":-1868808300,"predicate":"paymentRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"name","type":"flags.0?string"},{"name":"phone","type":"flags.1?string"},{"name":"email","type":"flags.2?string"},{"name":"shipping_address","type":"flags.3?PostAddress"}],"type":"PaymentRequestedInfo"},{"id":-1344716869,"predicate":"keyboardButtonBuy","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":1080663248,"predicate":"messageActionPaymentSent","params":[{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"MessageAction"},{"id":-842892769,"predicate":"paymentSavedCredentialsCard","params":[{"name":"id","type":"string"},{"name":"title","type":"string"}],"type":"PaymentSavedCredentials"},{"id":475467473,"predicate":"webDocument","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":-1678949555,"predicate":"inputWebDocument","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"InputWebDocument"},{"id":-1036396922,"predicate":"inputWebFileLocation","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"}],"type":"InputWebFileLocation"},{"id":568808380,"predicate":"upload.webFile","params":[{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"file_type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.WebFile"},{"id":-1928649707,"predicate":"payments.paymentForm","params":[{"name":"flags","type":"#"},{"name":"can_save_credentials","type":"flags.2?true"},{"name":"password_missing","type":"flags.3?true"},{"name":"form_id","type":"long"},{"name":"bot_id","type":"int"},{"name":"invoice","type":"Invoice"},{"name":"provider_id","type":"int"},{"name":"url","type":"string"},{"name":"native_provider","type":"flags.4?string"},{"name":"native_params","type":"flags.4?DataJSON"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"},{"name":"saved_credentials","type":"flags.1?PaymentSavedCredentials"},{"name":"users","type":"Vector"}],"type":"payments.PaymentForm"},{"id":-784000893,"predicate":"payments.validatedRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"id","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"payments.ValidatedRequestedInfo"},{"id":1314881805,"predicate":"payments.paymentResult","params":[{"name":"updates","type":"Updates"}],"type":"payments.PaymentResult"},{"id":280319440,"predicate":"payments.paymentReceipt","params":[{"name":"flags","type":"#"},{"name":"date","type":"int"},{"name":"bot_id","type":"int"},{"name":"provider_id","type":"int"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.2?WebDocument"},{"name":"invoice","type":"Invoice"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping","type":"flags.1?ShippingOption"},{"name":"tip_amount","type":"flags.3?long"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"credentials_title","type":"string"},{"name":"users","type":"Vector"}],"type":"payments.PaymentReceipt"},{"id":-74456004,"predicate":"payments.savedInfo","params":[{"name":"flags","type":"#"},{"name":"has_saved_credentials","type":"flags.1?true"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"}],"type":"payments.SavedInfo"},{"id":-1056001329,"predicate":"inputPaymentCredentialsSaved","params":[{"name":"id","type":"string"},{"name":"tmp_password","type":"bytes"}],"type":"InputPaymentCredentials"},{"id":873977640,"predicate":"inputPaymentCredentials","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-614138572,"predicate":"account.tmpPassword","params":[{"name":"tmp_password","type":"bytes"},{"name":"valid_until","type":"int"}],"type":"account.TmpPassword"},{"id":-1239335713,"predicate":"shippingOption","params":[{"name":"id","type":"string"},{"name":"title","type":"string"},{"name":"prices","type":"Vector"}],"type":"ShippingOption"},{"id":-523384512,"predicate":"updateBotShippingQuery","params":[{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"payload","type":"bytes"},{"name":"shipping_address","type":"PostAddress"}],"type":"Update"},{"id":1563376297,"predicate":"updateBotPrecheckoutQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"int"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"Update"},{"id":-6249322,"predicate":"inputStickerSetItem","params":[{"name":"flags","type":"#"},{"name":"document","type":"InputDocument"},{"name":"emoji","type":"string"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"InputStickerSetItem"},{"id":-1425052898,"predicate":"updatePhoneCall","params":[{"name":"phone_call","type":"PhoneCall"}],"type":"Update"},{"id":506920429,"predicate":"inputPhoneCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPhoneCall"},{"id":1399245077,"predicate":"phoneCallEmpty","params":[{"name":"id","type":"long"}],"type":"PhoneCall"},{"id":462375633,"predicate":"phoneCallWaiting","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"receive_date","type":"flags.0?int"}],"type":"PhoneCall"},{"id":-2014659757,"predicate":"phoneCallRequested","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":-1719909046,"predicate":"phoneCallAccepted","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":-2025673089,"predicate":"phoneCall","params":[{"name":"flags","type":"#"},{"name":"p2p_allowed","type":"flags.5?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"int"},{"name":"participant_id","type":"int"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"connections","type":"Vector"},{"name":"start_date","type":"int"}],"type":"PhoneCall"},{"id":1355435489,"predicate":"phoneCallDiscarded","params":[{"name":"flags","type":"#"},{"name":"need_rating","type":"flags.2?true"},{"name":"need_debug","type":"flags.3?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"PhoneCall"},{"id":-1655957568,"predicate":"phoneConnection","params":[{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"peer_tag","type":"bytes"}],"type":"PhoneConnection"},{"id":-58224696,"predicate":"phoneCallProtocol","params":[{"name":"flags","type":"#"},{"name":"udp_p2p","type":"flags.0?true"},{"name":"udp_reflector","type":"flags.1?true"},{"name":"min_layer","type":"int"},{"name":"max_layer","type":"int"},{"name":"library_versions","type":"Vector"}],"type":"PhoneCallProtocol"},{"id":-326966976,"predicate":"phone.phoneCall","params":[{"name":"phone_call","type":"PhoneCall"},{"name":"users","type":"Vector"}],"type":"phone.PhoneCall"},{"id":-2134272152,"predicate":"inputMessagesFilterPhoneCalls","params":[{"name":"flags","type":"#"},{"name":"missed","type":"flags.0?true"}],"type":"MessagesFilter"},{"id":-2132731265,"predicate":"messageActionPhoneCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.2?true"},{"name":"call_id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"MessageAction"},{"id":2054952868,"predicate":"inputMessagesFilterRoundVoice","params":[],"type":"MessagesFilter"},{"id":-1253451181,"predicate":"inputMessagesFilterRoundVideo","params":[],"type":"MessagesFilter"},{"id":-1997373508,"predicate":"sendMessageRecordRoundAction","params":[],"type":"SendMessageAction"},{"id":608050278,"predicate":"sendMessageUploadRoundAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-242427324,"predicate":"upload.fileCdnRedirect","params":[{"name":"dc_id","type":"int"},{"name":"file_token","type":"bytes"},{"name":"encryption_key","type":"bytes"},{"name":"encryption_iv","type":"bytes"},{"name":"file_hashes","type":"Vector"}],"type":"upload.File"},{"id":-290921362,"predicate":"upload.cdnFileReuploadNeeded","params":[{"name":"request_token","type":"bytes"}],"type":"upload.CdnFile"},{"id":-1449145777,"predicate":"upload.cdnFile","params":[{"name":"bytes","type":"bytes"}],"type":"upload.CdnFile"},{"id":-914167110,"predicate":"cdnPublicKey","params":[{"name":"dc_id","type":"int"},{"name":"public_key","type":"string"}],"type":"CdnPublicKey"},{"id":1462101002,"predicate":"cdnConfig","params":[{"name":"public_keys","type":"Vector"}],"type":"CdnConfig"},{"id":-283684427,"predicate":"pageBlockChannel","params":[{"name":"channel","type":"Chat"}],"type":"PageBlock"},{"id":-892239370,"predicate":"langPackString","params":[{"name":"key","type":"string"},{"name":"value","type":"string"}],"type":"LangPackString"},{"id":1816636575,"predicate":"langPackStringPluralized","params":[{"name":"flags","type":"#"},{"name":"key","type":"string"},{"name":"zero_value","type":"flags.0?string"},{"name":"one_value","type":"flags.1?string"},{"name":"two_value","type":"flags.2?string"},{"name":"few_value","type":"flags.3?string"},{"name":"many_value","type":"flags.4?string"},{"name":"other_value","type":"string"}],"type":"LangPackString"},{"id":695856818,"predicate":"langPackStringDeleted","params":[{"name":"key","type":"string"}],"type":"LangPackString"},{"id":-209337866,"predicate":"langPackDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"strings","type":"Vector"}],"type":"LangPackDifference"},{"id":-288727837,"predicate":"langPackLanguage","params":[{"name":"flags","type":"#"},{"name":"official","type":"flags.0?true"},{"name":"rtl","type":"flags.2?true"},{"name":"beta","type":"flags.3?true"},{"name":"name","type":"string"},{"name":"native_name","type":"string"},{"name":"lang_code","type":"string"},{"name":"base_lang_code","type":"flags.1?string"},{"name":"plural_code","type":"string"},{"name":"strings_count","type":"int"},{"name":"translated_count","type":"int"},{"name":"translations_url","type":"string"}],"type":"LangPackLanguage"},{"id":1180041828,"predicate":"updateLangPackTooLong","params":[{"name":"lang_code","type":"string"}],"type":"Update"},{"id":1442983757,"predicate":"updateLangPack","params":[{"name":"difference","type":"LangPackDifference"}],"type":"Update"},{"id":-859915345,"predicate":"channelParticipantAdmin","params":[{"name":"flags","type":"#"},{"name":"can_edit","type":"flags.0?true"},{"name":"self","type":"flags.1?true"},{"name":"user_id","type":"int"},{"name":"inviter_id","type":"flags.1?int"},{"name":"promoted_by","type":"int"},{"name":"date","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.2?string"}],"type":"ChannelParticipant"},{"id":1352785878,"predicate":"channelParticipantBanned","params":[{"name":"flags","type":"#"},{"name":"left","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"kicked_by","type":"int"},{"name":"date","type":"int"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"ChannelParticipant"},{"id":338142689,"predicate":"channelParticipantsBanned","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":106343499,"predicate":"channelParticipantsSearch","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-421545947,"predicate":"channelAdminLogEventActionChangeTitle","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1427671598,"predicate":"channelAdminLogEventActionChangeAbout","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1783299128,"predicate":"channelAdminLogEventActionChangeUsername","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1129042607,"predicate":"channelAdminLogEventActionChangePhoto","params":[{"name":"prev_photo","type":"Photo"},{"name":"new_photo","type":"Photo"}],"type":"ChannelAdminLogEventAction"},{"id":460916654,"predicate":"channelAdminLogEventActionToggleInvites","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":648939889,"predicate":"channelAdminLogEventActionToggleSignatures","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-370660328,"predicate":"channelAdminLogEventActionUpdatePinned","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1889215493,"predicate":"channelAdminLogEventActionEditMessage","params":[{"name":"prev_message","type":"Message"},{"name":"new_message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1121994683,"predicate":"channelAdminLogEventActionDeleteMessage","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":405815507,"predicate":"channelAdminLogEventActionParticipantJoin","params":[],"type":"ChannelAdminLogEventAction"},{"id":-124291086,"predicate":"channelAdminLogEventActionParticipantLeave","params":[],"type":"ChannelAdminLogEventAction"},{"id":-484690728,"predicate":"channelAdminLogEventActionParticipantInvite","params":[{"name":"participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-422036098,"predicate":"channelAdminLogEventActionParticipantToggleBan","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-714643696,"predicate":"channelAdminLogEventActionParticipantToggleAdmin","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":995769920,"predicate":"channelAdminLogEvent","params":[{"name":"id","type":"long"},{"name":"date","type":"int"},{"name":"user_id","type":"int"},{"name":"action","type":"ChannelAdminLogEventAction"}],"type":"ChannelAdminLogEvent"},{"id":-309659827,"predicate":"channels.adminLogResults","params":[{"name":"events","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.AdminLogResults"},{"id":-368018716,"predicate":"channelAdminLogEventsFilter","params":[{"name":"flags","type":"#"},{"name":"join","type":"flags.0?true"},{"name":"leave","type":"flags.1?true"},{"name":"invite","type":"flags.2?true"},{"name":"ban","type":"flags.3?true"},{"name":"unban","type":"flags.4?true"},{"name":"kick","type":"flags.5?true"},{"name":"unkick","type":"flags.6?true"},{"name":"promote","type":"flags.7?true"},{"name":"demote","type":"flags.8?true"},{"name":"info","type":"flags.9?true"},{"name":"settings","type":"flags.10?true"},{"name":"pinned","type":"flags.11?true"},{"name":"edit","type":"flags.12?true"},{"name":"delete","type":"flags.13?true"},{"name":"group_call","type":"flags.14?true"},{"name":"invites","type":"flags.15?true"}],"type":"ChannelAdminLogEventsFilter"},{"id":511092620,"predicate":"topPeerCategoryPhoneCalls","params":[],"type":"TopPeerCategory"},{"id":-2143067670,"predicate":"pageBlockAudio","params":[{"name":"audio_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1558266229,"predicate":"popularContact","params":[{"name":"client_id","type":"long"},{"name":"importers","type":"int"}],"type":"PopularContact"},{"id":1200788123,"predicate":"messageActionScreenshotTaken","params":[],"type":"MessageAction"},{"id":-1634752813,"predicate":"messages.favedStickersNotModified","params":[],"type":"messages.FavedStickers"},{"id":-209768682,"predicate":"messages.favedStickers","params":[{"name":"hash","type":"int"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"}],"type":"messages.FavedStickers"},{"id":-451831443,"predicate":"updateFavedStickers","params":[],"type":"Update"},{"id":-1987495099,"predicate":"updateChannelReadMessagesContents","params":[{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":-1040652646,"predicate":"inputMessagesFilterMyMentions","params":[],"type":"MessagesFilter"},{"id":1887741886,"predicate":"updateContactsReset","params":[],"type":"Update"},{"id":-1312568665,"predicate":"channelAdminLogEventActionChangeStickerSet","params":[{"name":"prev_stickerset","type":"InputStickerSet"},{"name":"new_stickerset","type":"InputStickerSet"}],"type":"ChannelAdminLogEventAction"},{"id":-85549226,"predicate":"messageActionCustomAction","params":[{"name":"message","type":"string"}],"type":"MessageAction"},{"id":178373535,"predicate":"inputPaymentCredentialsApplePay","params":[{"name":"payment_data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-419271411,"predicate":"inputMessagesFilterGeo","params":[],"type":"MessagesFilter"},{"id":-530392189,"predicate":"inputMessagesFilterContacts","params":[],"type":"MessagesFilter"},{"id":1893427255,"predicate":"updateChannelAvailableMessages","params":[{"name":"channel_id","type":"int"},{"name":"available_min_id","type":"int"}],"type":"Update"},{"id":1599903217,"predicate":"channelAdminLogEventActionTogglePreHistoryHidden","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-1759532989,"predicate":"inputMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"stopped","type":"flags.0?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.2?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"}],"type":"InputMedia"},{"id":-1186937242,"predicate":"messageMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"int"},{"name":"proximity_notification_radius","type":"flags.1?int"}],"type":"MessageMedia"},{"id":1189204285,"predicate":"recentMeUrlUnknown","params":[{"name":"url","type":"string"}],"type":"RecentMeUrl"},{"id":-1917045962,"predicate":"recentMeUrlUser","params":[{"name":"url","type":"string"},{"name":"user_id","type":"int"}],"type":"RecentMeUrl"},{"id":-1608834311,"predicate":"recentMeUrlChat","params":[{"name":"url","type":"string"},{"name":"chat_id","type":"int"}],"type":"RecentMeUrl"},{"id":-347535331,"predicate":"recentMeUrlChatInvite","params":[{"name":"url","type":"string"},{"name":"chat_invite","type":"ChatInvite"}],"type":"RecentMeUrl"},{"id":-1140172836,"predicate":"recentMeUrlStickerSet","params":[{"name":"url","type":"string"},{"name":"set","type":"StickerSetCovered"}],"type":"RecentMeUrl"},{"id":235081943,"predicate":"help.recentMeUrls","params":[{"name":"urls","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"help.RecentMeUrls"},{"id":-266911767,"predicate":"channels.channelParticipantsNotModified","params":[],"type":"channels.ChannelParticipants"},{"id":1951620897,"predicate":"messages.messagesNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Messages"},{"id":482797855,"predicate":"inputSingleMedia","params":[{"name":"flags","type":"#"},{"name":"media","type":"InputMedia"},{"name":"random_id","type":"long"},{"name":"message","type":"string"},{"name":"entities","type":"flags.0?Vector"}],"type":"InputSingleMedia"},{"id":-892779534,"predicate":"webAuthorization","params":[{"name":"hash","type":"long"},{"name":"bot_id","type":"int"},{"name":"domain","type":"string"},{"name":"browser","type":"string"},{"name":"platform","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"region","type":"string"}],"type":"WebAuthorization"},{"id":-313079300,"predicate":"account.webAuthorizations","params":[{"name":"authorizations","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.WebAuthorizations"},{"id":-1502174430,"predicate":"inputMessageID","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-1160215659,"predicate":"inputMessageReplyTo","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-2037963464,"predicate":"inputMessagePinned","params":[],"type":"InputMessage"},{"id":-1687559349,"predicate":"messageEntityPhone","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1280209983,"predicate":"messageEntityCashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1410748418,"predicate":"messageActionBotAllowed","params":[{"name":"domain","type":"string"}],"type":"MessageAction"},{"id":-55902537,"predicate":"inputDialogPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputDialogPeer"},{"id":-445792507,"predicate":"dialogPeer","params":[{"name":"peer","type":"Peer"}],"type":"DialogPeer"},{"id":223655517,"predicate":"messages.foundStickerSetsNotModified","params":[],"type":"messages.FoundStickerSets"},{"id":1359533640,"predicate":"messages.foundStickerSets","params":[{"name":"hash","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.FoundStickerSets"},{"id":1648543603,"predicate":"fileHash","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"bytes"}],"type":"FileHash"},{"id":-104284986,"predicate":"webDocumentNoProxy","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":1968737087,"predicate":"inputClientProxy","params":[{"name":"address","type":"string"},{"name":"port","type":"int"}],"type":"InputClientProxy"},{"id":-483352705,"predicate":"help.termsOfServiceUpdateEmpty","params":[{"name":"expires","type":"int"}],"type":"help.TermsOfServiceUpdate"},{"id":686618977,"predicate":"help.termsOfServiceUpdate","params":[{"name":"expires","type":"int"},{"name":"terms_of_service","type":"help.TermsOfService"}],"type":"help.TermsOfServiceUpdate"},{"id":859091184,"predicate":"inputSecureFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"InputSecureFile"},{"id":1399317950,"predicate":"inputSecureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputSecureFile"},{"id":-876089816,"predicate":"inputSecureFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":1679398724,"predicate":"secureFileEmpty","params":[],"type":"SecureFile"},{"id":-534283678,"predicate":"secureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"date","type":"int"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureFile"},{"id":-1964327229,"predicate":"secureData","params":[{"name":"data","type":"bytes"},{"name":"data_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureData"},{"id":2103482845,"predicate":"securePlainPhone","params":[{"name":"phone","type":"string"}],"type":"SecurePlainData"},{"id":569137759,"predicate":"securePlainEmail","params":[{"name":"email","type":"string"}],"type":"SecurePlainData"},{"id":-1658158621,"predicate":"secureValueTypePersonalDetails","params":[],"type":"SecureValueType"},{"id":1034709504,"predicate":"secureValueTypePassport","params":[],"type":"SecureValueType"},{"id":115615172,"predicate":"secureValueTypeDriverLicense","params":[],"type":"SecureValueType"},{"id":-1596951477,"predicate":"secureValueTypeIdentityCard","params":[],"type":"SecureValueType"},{"id":-1717268701,"predicate":"secureValueTypeInternalPassport","params":[],"type":"SecureValueType"},{"id":-874308058,"predicate":"secureValueTypeAddress","params":[],"type":"SecureValueType"},{"id":-63531698,"predicate":"secureValueTypeUtilityBill","params":[],"type":"SecureValueType"},{"id":-1995211763,"predicate":"secureValueTypeBankStatement","params":[],"type":"SecureValueType"},{"id":-1954007928,"predicate":"secureValueTypeRentalAgreement","params":[],"type":"SecureValueType"},{"id":-1713143702,"predicate":"secureValueTypePassportRegistration","params":[],"type":"SecureValueType"},{"id":-368907213,"predicate":"secureValueTypeTemporaryRegistration","params":[],"type":"SecureValueType"},{"id":-1289704741,"predicate":"secureValueTypePhone","params":[],"type":"SecureValueType"},{"id":-1908627474,"predicate":"secureValueTypeEmail","params":[],"type":"SecureValueType"},{"id":411017418,"predicate":"secureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?SecureFile"},{"name":"reverse_side","type":"flags.2?SecureFile"},{"name":"selfie","type":"flags.3?SecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"},{"name":"hash","type":"bytes"}],"type":"SecureValue"},{"id":-618540889,"predicate":"inputSecureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?InputSecureFile"},{"name":"reverse_side","type":"flags.2?InputSecureFile"},{"name":"selfie","type":"flags.3?InputSecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"}],"type":"InputSecureValue"},{"id":-316748368,"predicate":"secureValueHash","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"}],"type":"SecureValueHash"},{"id":-391902247,"predicate":"secureValueErrorData","params":[{"name":"type","type":"SecureValueType"},{"name":"data_hash","type":"bytes"},{"name":"field","type":"string"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":12467706,"predicate":"secureValueErrorFrontSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2037765467,"predicate":"secureValueErrorReverseSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-449327402,"predicate":"secureValueErrorSelfie","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2054162547,"predicate":"secureValueErrorFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":1717706985,"predicate":"secureValueErrorFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":871426631,"predicate":"secureCredentialsEncrypted","params":[{"name":"data","type":"bytes"},{"name":"hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureCredentialsEncrypted"},{"id":-1389486888,"predicate":"account.authorizationForm","params":[{"name":"flags","type":"#"},{"name":"required_types","type":"Vector"},{"name":"values","type":"Vector"},{"name":"errors","type":"Vector"},{"name":"users","type":"Vector"},{"name":"privacy_policy_url","type":"flags.0?string"}],"type":"account.AuthorizationForm"},{"id":-2128640689,"predicate":"account.sentEmailCode","params":[{"name":"email_pattern","type":"string"},{"name":"length","type":"int"}],"type":"account.SentEmailCode"},{"id":455635795,"predicate":"messageActionSecureValuesSentMe","params":[{"name":"values","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"MessageAction"},{"id":-648257196,"predicate":"messageActionSecureValuesSent","params":[{"name":"types","type":"Vector"}],"type":"MessageAction"},{"id":1722786150,"predicate":"help.deepLinkInfoEmpty","params":[],"type":"help.DeepLinkInfo"},{"id":1783556146,"predicate":"help.deepLinkInfo","params":[{"name":"flags","type":"#"},{"name":"update_app","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"help.DeepLinkInfo"},{"id":289586518,"predicate":"savedPhoneContact","params":[{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"date","type":"int"}],"type":"SavedContact"},{"id":1304052993,"predicate":"account.takeout","params":[{"name":"id","type":"long"}],"type":"account.Takeout"},{"id":700340377,"predicate":"inputTakeoutFileLocation","params":[],"type":"InputFileLocation"},{"id":-513517117,"predicate":"updateDialogUnreadMark","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-253500010,"predicate":"messages.dialogsNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Dialogs"},{"id":-1625153079,"predicate":"inputWebFileGeoPointLocation","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"access_hash","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"zoom","type":"int"},{"name":"scale","type":"int"}],"type":"InputWebFileLocation"},{"id":-1255369827,"predicate":"contacts.topPeersDisabled","params":[],"type":"contacts.TopPeers"},{"id":-1685456582,"predicate":"inputReportReasonCopyright","params":[],"type":"ReportReason"},{"id":-732254058,"predicate":"passwordKdfAlgoUnknown","params":[],"type":"PasswordKdfAlgo"},{"id":4883767,"predicate":"securePasswordKdfAlgoUnknown","params":[],"type":"SecurePasswordKdfAlgo"},{"id":-1141711456,"predicate":"securePasswordKdfAlgoPBKDF2HMACSHA512iter100000","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":-2042159726,"predicate":"securePasswordKdfAlgoSHA512","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":354925740,"predicate":"secureSecretSettings","params":[{"name":"secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_secret","type":"bytes"},{"name":"secure_secret_id","type":"long"}],"type":"SecureSecretSettings"},{"id":982592842,"predicate":"passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow","params":[{"name":"salt1","type":"bytes"},{"name":"salt2","type":"bytes"},{"name":"g","type":"int"},{"name":"p","type":"bytes"}],"type":"PasswordKdfAlgo"},{"id":-1736378792,"predicate":"inputCheckPasswordEmpty","params":[],"type":"InputCheckPasswordSRP"},{"id":-763367294,"predicate":"inputCheckPasswordSRP","params":[{"name":"srp_id","type":"long"},{"name":"A","type":"bytes"},{"name":"M1","type":"bytes"}],"type":"InputCheckPasswordSRP"},{"id":-2036501105,"predicate":"secureValueError","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-1592506512,"predicate":"secureValueErrorTranslationFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":878931416,"predicate":"secureValueErrorTranslationFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2103600678,"predicate":"secureRequiredType","params":[{"name":"flags","type":"#"},{"name":"native_names","type":"flags.0?true"},{"name":"selfie_required","type":"flags.1?true"},{"name":"translation_required","type":"flags.2?true"},{"name":"type","type":"SecureValueType"}],"type":"SecureRequiredType"},{"id":41187252,"predicate":"secureRequiredTypeOneOf","params":[{"name":"types","type":"Vector"}],"type":"SecureRequiredType"},{"id":-1078332329,"predicate":"help.passportConfigNotModified","params":[],"type":"help.PassportConfig"},{"id":-1600596305,"predicate":"help.passportConfig","params":[{"name":"hash","type":"int"},{"name":"countries_langs","type":"DataJSON"}],"type":"help.PassportConfig"},{"id":488313413,"predicate":"inputAppEvent","params":[{"name":"time","type":"double"},{"name":"type","type":"string"},{"name":"peer","type":"long"},{"name":"data","type":"JSONValue"}],"type":"InputAppEvent"},{"id":-1059185703,"predicate":"jsonObjectValue","params":[{"name":"key","type":"string"},{"name":"value","type":"JSONValue"}],"type":"JSONObjectValue"},{"id":1064139624,"predicate":"jsonNull","params":[],"type":"JSONValue"},{"id":-952869270,"predicate":"jsonBool","params":[{"name":"value","type":"Bool"}],"type":"JSONValue"},{"id":736157604,"predicate":"jsonNumber","params":[{"name":"value","type":"double"}],"type":"JSONValue"},{"id":-1222740358,"predicate":"jsonString","params":[{"name":"value","type":"string"}],"type":"JSONValue"},{"id":-146520221,"predicate":"jsonArray","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":-1715350371,"predicate":"jsonObject","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":-1311015810,"predicate":"inputNotifyBroadcasts","params":[],"type":"InputNotifyPeer"},{"id":-703403793,"predicate":"notifyBroadcasts","params":[],"type":"NotifyPeer"},{"id":-311786236,"predicate":"textSubscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-939827711,"predicate":"textSuperscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":55281185,"predicate":"textMarked","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":483104362,"predicate":"textPhone","params":[{"name":"text","type":"RichText"},{"name":"phone","type":"string"}],"type":"RichText"},{"id":136105807,"predicate":"textImage","params":[{"name":"document_id","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"RichText"},{"id":504660880,"predicate":"pageBlockKicker","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":878078826,"predicate":"pageTableCell","params":[{"name":"flags","type":"#"},{"name":"header","type":"flags.0?true"},{"name":"align_center","type":"flags.3?true"},{"name":"align_right","type":"flags.4?true"},{"name":"valign_middle","type":"flags.5?true"},{"name":"valign_bottom","type":"flags.6?true"},{"name":"text","type":"flags.7?RichText"},{"name":"colspan","type":"flags.1?int"},{"name":"rowspan","type":"flags.2?int"}],"type":"PageTableCell"},{"id":-524237339,"predicate":"pageTableRow","params":[{"name":"cells","type":"Vector"}],"type":"PageTableRow"},{"id":-1085412734,"predicate":"pageBlockTable","params":[{"name":"flags","type":"#"},{"name":"bordered","type":"flags.0?true"},{"name":"striped","type":"flags.1?true"},{"name":"title","type":"RichText"},{"name":"rows","type":"Vector"}],"type":"PageBlock"},{"id":1869903447,"predicate":"pageCaption","params":[{"name":"text","type":"RichText"},{"name":"credit","type":"RichText"}],"type":"PageCaption"},{"id":-1188055347,"predicate":"pageListItemText","params":[{"name":"text","type":"RichText"}],"type":"PageListItem"},{"id":635466748,"predicate":"pageListItemBlocks","params":[{"name":"blocks","type":"Vector"}],"type":"PageListItem"},{"id":1577484359,"predicate":"pageListOrderedItemText","params":[{"name":"num","type":"string"},{"name":"text","type":"RichText"}],"type":"PageListOrderedItem"},{"id":-1730311882,"predicate":"pageListOrderedItemBlocks","params":[{"name":"num","type":"string"},{"name":"blocks","type":"Vector"}],"type":"PageListOrderedItem"},{"id":-1702174239,"predicate":"pageBlockOrderedList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":1987480557,"predicate":"pageBlockDetails","params":[{"name":"flags","type":"#"},{"name":"open","type":"flags.0?true"},{"name":"blocks","type":"Vector"},{"name":"title","type":"RichText"}],"type":"PageBlock"},{"id":-1282352120,"predicate":"pageRelatedArticle","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"title","type":"flags.0?string"},{"name":"description","type":"flags.1?string"},{"name":"photo_id","type":"flags.2?long"},{"name":"author","type":"flags.3?string"},{"name":"published_date","type":"flags.4?int"}],"type":"PageRelatedArticle"},{"id":370236054,"predicate":"pageBlockRelatedArticles","params":[{"name":"title","type":"RichText"},{"name":"articles","type":"Vector"}],"type":"PageBlock"},{"id":-1538310410,"predicate":"pageBlockMap","params":[{"name":"geo","type":"GeoPoint"},{"name":"zoom","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-1738178803,"predicate":"page","params":[{"name":"flags","type":"#"},{"name":"part","type":"flags.0?true"},{"name":"rtl","type":"flags.1?true"},{"name":"v2","type":"flags.2?true"},{"name":"url","type":"string"},{"name":"blocks","type":"Vector"},{"name":"photos","type":"Vector"},{"name":"documents","type":"Vector"},{"name":"views","type":"flags.3?int"}],"type":"Page"},{"id":-610373422,"predicate":"inputPrivacyKeyPhoneP2P","params":[],"type":"InputPrivacyKey"},{"id":961092808,"predicate":"privacyKeyPhoneP2P","params":[],"type":"PrivacyKey"},{"id":894777186,"predicate":"textAnchor","params":[{"name":"text","type":"RichText"},{"name":"name","type":"string"}],"type":"RichText"},{"id":-1945767479,"predicate":"help.supportName","params":[{"name":"name","type":"string"}],"type":"help.SupportName"},{"id":-206688531,"predicate":"help.userInfoEmpty","params":[],"type":"help.UserInfo"},{"id":32192344,"predicate":"help.userInfo","params":[{"name":"message","type":"string"},{"name":"entities","type":"Vector"},{"name":"author","type":"string"},{"name":"date","type":"int"}],"type":"help.UserInfo"},{"id":-202219658,"predicate":"messageActionContactSignUp","params":[],"type":"MessageAction"},{"id":-1398708869,"predicate":"updateMessagePoll","params":[{"name":"flags","type":"#"},{"name":"poll_id","type":"long"},{"name":"poll","type":"flags.0?Poll"},{"name":"results","type":"PollResults"}],"type":"Update"},{"id":1823064809,"predicate":"pollAnswer","params":[{"name":"text","type":"string"},{"name":"option","type":"bytes"}],"type":"PollAnswer"},{"id":-2032041631,"predicate":"poll","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"closed","type":"flags.0?true"},{"name":"public_voters","type":"flags.1?true"},{"name":"multiple_choice","type":"flags.2?true"},{"name":"quiz","type":"flags.3?true"},{"name":"question","type":"string"},{"name":"answers","type":"Vector"},{"name":"close_period","type":"flags.4?int"},{"name":"close_date","type":"flags.5?int"}],"type":"Poll"},{"id":997055186,"predicate":"pollAnswerVoters","params":[{"name":"flags","type":"#"},{"name":"chosen","type":"flags.0?true"},{"name":"correct","type":"flags.1?true"},{"name":"option","type":"bytes"},{"name":"voters","type":"int"}],"type":"PollAnswerVoters"},{"id":-1159937629,"predicate":"pollResults","params":[{"name":"flags","type":"#"},{"name":"min","type":"flags.0?true"},{"name":"results","type":"flags.1?Vector"},{"name":"total_voters","type":"flags.2?int"},{"name":"recent_voters","type":"flags.3?Vector"},{"name":"solution","type":"flags.4?string"},{"name":"solution_entities","type":"flags.4?Vector"}],"type":"PollResults"},{"id":261416433,"predicate":"inputMediaPoll","params":[{"name":"flags","type":"#"},{"name":"poll","type":"Poll"},{"name":"correct_answers","type":"flags.0?Vector"},{"name":"solution","type":"flags.1?string"},{"name":"solution_entities","type":"flags.1?Vector"}],"type":"InputMedia"},{"id":1272375192,"predicate":"messageMediaPoll","params":[{"name":"poll","type":"Poll"},{"name":"results","type":"PollResults"}],"type":"MessageMedia"},{"id":-264117680,"predicate":"chatOnlines","params":[{"name":"onlines","type":"int"}],"type":"ChatOnlines"},{"id":1202287072,"predicate":"statsURL","params":[{"name":"url","type":"string"}],"type":"StatsURL"},{"id":-525288402,"predicate":"photoStrippedSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":1605510357,"predicate":"chatAdminRights","params":[{"name":"flags","type":"#"},{"name":"change_info","type":"flags.0?true"},{"name":"post_messages","type":"flags.1?true"},{"name":"edit_messages","type":"flags.2?true"},{"name":"delete_messages","type":"flags.3?true"},{"name":"ban_users","type":"flags.4?true"},{"name":"invite_users","type":"flags.5?true"},{"name":"pin_messages","type":"flags.7?true"},{"name":"add_admins","type":"flags.9?true"},{"name":"anonymous","type":"flags.10?true"},{"name":"manage_call","type":"flags.11?true"},{"name":"other","type":"flags.12?true"}],"type":"ChatAdminRights"},{"id":-1626209256,"predicate":"chatBannedRights","params":[{"name":"flags","type":"#"},{"name":"view_messages","type":"flags.0?true"},{"name":"send_messages","type":"flags.1?true"},{"name":"send_media","type":"flags.2?true"},{"name":"send_stickers","type":"flags.3?true"},{"name":"send_gifs","type":"flags.4?true"},{"name":"send_games","type":"flags.5?true"},{"name":"send_inline","type":"flags.6?true"},{"name":"embed_links","type":"flags.7?true"},{"name":"send_polls","type":"flags.8?true"},{"name":"change_info","type":"flags.10?true"},{"name":"invite_users","type":"flags.15?true"},{"name":"pin_messages","type":"flags.17?true"},{"name":"until_date","type":"int"}],"type":"ChatBannedRights"},{"id":1421875280,"predicate":"updateChatDefaultBannedRights","params":[{"name":"peer","type":"Peer"},{"name":"default_banned_rights","type":"ChatBannedRights"},{"name":"version","type":"int"}],"type":"Update"},{"id":-433014407,"predicate":"inputWallPaper","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputWallPaper"},{"id":1913199744,"predicate":"inputWallPaperSlug","params":[{"name":"slug","type":"string"}],"type":"InputWallPaper"},{"id":-1150621555,"predicate":"channelParticipantsContacts","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":771095562,"predicate":"channelAdminLogEventActionDefaultBannedRights","params":[{"name":"prev_banned_rights","type":"ChatBannedRights"},{"name":"new_banned_rights","type":"ChatBannedRights"}],"type":"ChannelAdminLogEventAction"},{"id":-1895328189,"predicate":"channelAdminLogEventActionStopPoll","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":471437699,"predicate":"account.wallPapersNotModified","params":[],"type":"account.WallPapers"},{"id":1881892265,"predicate":"account.wallPapers","params":[{"name":"hash","type":"int"},{"name":"wallpapers","type":"Vector"}],"type":"account.WallPapers"},{"id":-557924733,"predicate":"codeSettings","params":[{"name":"flags","type":"#"},{"name":"allow_flashcall","type":"flags.0?true"},{"name":"current_number","type":"flags.1?true"},{"name":"allow_app_hash","type":"flags.4?true"}],"type":"CodeSettings"},{"id":499236004,"predicate":"wallPaperSettings","params":[{"name":"flags","type":"#"},{"name":"blur","type":"flags.1?true"},{"name":"motion","type":"flags.2?true"},{"name":"background_color","type":"flags.0?int"},{"name":"second_background_color","type":"flags.4?int"},{"name":"third_background_color","type":"flags.5?int"},{"name":"fourth_background_color","type":"flags.6?int"},{"name":"intensity","type":"flags.3?int"},{"name":"rotation","type":"flags.4?int"}],"type":"WallPaperSettings"},{"id":-532532493,"predicate":"autoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"disabled","type":"flags.0?true"},{"name":"video_preload_large","type":"flags.1?true"},{"name":"audio_preload_next","type":"flags.2?true"},{"name":"phonecalls_less_data","type":"flags.3?true"},{"name":"photo_size_max","type":"int"},{"name":"video_size_max","type":"int"},{"name":"file_size_max","type":"int"},{"name":"video_upload_maxbitrate","type":"int"}],"type":"AutoDownloadSettings"},{"id":1674235686,"predicate":"account.autoDownloadSettings","params":[{"name":"low","type":"AutoDownloadSettings"},{"name":"medium","type":"AutoDownloadSettings"},{"name":"high","type":"AutoDownloadSettings"}],"type":"account.AutoDownloadSettings"},{"id":-709641735,"predicate":"emojiKeyword","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":594408994,"predicate":"emojiKeywordDeleted","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":1556570557,"predicate":"emojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"keywords","type":"Vector"}],"type":"EmojiKeywordsDifference"},{"id":-1519029347,"predicate":"emojiURL","params":[{"name":"url","type":"string"}],"type":"EmojiURL"},{"id":-1275374751,"predicate":"emojiLanguage","params":[{"name":"lang_code","type":"string"}],"type":"EmojiLanguage"},{"id":-1529000952,"predicate":"inputPrivacyKeyForwards","params":[],"type":"InputPrivacyKey"},{"id":1777096355,"predicate":"privacyKeyForwards","params":[],"type":"PrivacyKey"},{"id":1461304012,"predicate":"inputPrivacyKeyProfilePhoto","params":[],"type":"InputPrivacyKey"},{"id":-1777000467,"predicate":"privacyKeyProfilePhoto","params":[],"type":"PrivacyKey"},{"id":1075322878,"predicate":"inputPhotoFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":-667654413,"predicate":"inputPhotoLegacyFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"}],"type":"InputFileLocation"},{"id":925204121,"predicate":"inputPeerPhotoFileLocation","params":[{"name":"flags","type":"#"},{"name":"big","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"long"}],"type":"InputFileLocation"},{"id":-1652231205,"predicate":"inputStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb_version","type":"int"}],"type":"InputFileLocation"},{"id":-11252123,"predicate":"folder","params":[{"name":"flags","type":"#"},{"name":"autofill_new_broadcasts","type":"flags.0?true"},{"name":"autofill_public_groups","type":"flags.1?true"},{"name":"autofill_new_correspondents","type":"flags.2?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"flags.3?ChatPhoto"}],"type":"Folder"},{"id":1908216652,"predicate":"dialogFolder","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"folder","type":"Folder"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"unread_muted_peers_count","type":"int"},{"name":"unread_unmuted_peers_count","type":"int"},{"name":"unread_muted_messages_count","type":"int"},{"name":"unread_unmuted_messages_count","type":"int"}],"type":"Dialog"},{"id":1684014375,"predicate":"inputDialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"InputDialogPeer"},{"id":1363483106,"predicate":"dialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"DialogPeer"},{"id":-70073706,"predicate":"inputFolderPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"folder_id","type":"int"}],"type":"InputFolderPeer"},{"id":-373643672,"predicate":"folderPeer","params":[{"name":"peer","type":"Peer"},{"name":"folder_id","type":"int"}],"type":"FolderPeer"},{"id":422972864,"predicate":"updateFolderPeers","params":[{"name":"folder_peers","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":756118935,"predicate":"inputUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"int"}],"type":"InputUser"},{"id":707290417,"predicate":"inputChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"int"}],"type":"InputChannel"},{"id":398123750,"predicate":"inputPeerUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"int"}],"type":"InputPeer"},{"id":-1667893317,"predicate":"inputPeerChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"int"}],"type":"InputPeer"},{"id":55761658,"predicate":"inputPrivacyKeyPhoneNumber","params":[],"type":"InputPrivacyKey"},{"id":-778378131,"predicate":"privacyKeyPhoneNumber","params":[],"type":"PrivacyKey"},{"id":-1472172887,"predicate":"topPeerCategoryForwardUsers","params":[],"type":"TopPeerCategory"},{"id":-68239120,"predicate":"topPeerCategoryForwardChats","params":[],"type":"TopPeerCategory"},{"id":-1569748965,"predicate":"channelAdminLogEventActionChangeLinkedChat","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":-398136321,"predicate":"messages.searchCounter","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"filter","type":"MessagesFilter"},{"name":"count","type":"int"}],"type":"messages.SearchCounter"},{"id":280464681,"predicate":"keyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.0?string"},{"name":"url","type":"string"},{"name":"button_id","type":"int"}],"type":"KeyboardButton"},{"id":-802258988,"predicate":"inputKeyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.1?string"},{"name":"url","type":"string"},{"name":"bot","type":"InputUser"}],"type":"KeyboardButton"},{"id":-1831650802,"predicate":"urlAuthResultRequest","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"bot","type":"User"},{"name":"domain","type":"string"}],"type":"UrlAuthResult"},{"id":-1886646706,"predicate":"urlAuthResultAccepted","params":[{"name":"url","type":"string"}],"type":"UrlAuthResult"},{"id":-1445536993,"predicate":"urlAuthResultDefault","params":[],"type":"UrlAuthResult"},{"id":1283572154,"predicate":"inputPrivacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-668769361,"predicate":"inputPrivacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":415136107,"predicate":"privacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":-1397881200,"predicate":"privacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":-1672577397,"predicate":"messageEntityUnderline","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1090087980,"predicate":"messageEntityStrike","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":34469328,"predicate":"messageEntityBlockquote","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1786671974,"predicate":"updatePeerSettings","params":[{"name":"peer","type":"Peer"},{"name":"settings","type":"PeerSettings"}],"type":"Update"},{"id":-1078612597,"predicate":"channelLocationEmpty","params":[],"type":"ChannelLocation"},{"id":547062491,"predicate":"channelLocation","params":[{"name":"geo_point","type":"GeoPoint"},{"name":"address","type":"string"}],"type":"ChannelLocation"},{"id":-901375139,"predicate":"peerLocated","params":[{"name":"peer","type":"Peer"},{"name":"expires","type":"int"},{"name":"distance","type":"int"}],"type":"PeerLocated"},{"id":-1263546448,"predicate":"updatePeerLocated","params":[{"name":"peers","type":"Vector"}],"type":"Update"},{"id":241923758,"predicate":"channelAdminLogEventActionChangeLocation","params":[{"name":"prev_value","type":"ChannelLocation"},{"name":"new_value","type":"ChannelLocation"}],"type":"ChannelAdminLogEventAction"},{"id":-606798099,"predicate":"inputReportReasonGeoIrrelevant","params":[],"type":"ReportReason"},{"id":1401984889,"predicate":"channelAdminLogEventActionToggleSlowMode","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":1148485274,"predicate":"auth.authorizationSignUpRequired","params":[{"name":"flags","type":"#"},{"name":"terms_of_service","type":"flags.0?help.TermsOfService"}],"type":"auth.Authorization"},{"id":-666824391,"predicate":"payments.paymentVerificationNeeded","params":[{"name":"url","type":"string"}],"type":"payments.PaymentResult"},{"id":42402760,"predicate":"inputStickerSetAnimatedEmoji","params":[],"type":"InputStickerSet"},{"id":967122427,"predicate":"updateNewScheduledMessage","params":[{"name":"message","type":"Message"}],"type":"Update"},{"id":-1870238482,"predicate":"updateDeleteScheduledMessages","params":[{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":-797791052,"predicate":"restrictionReason","params":[{"name":"platform","type":"string"},{"name":"reason","type":"string"},{"name":"text","type":"string"}],"type":"RestrictionReason"},{"id":1012306921,"predicate":"inputTheme","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputTheme"},{"id":-175567375,"predicate":"inputThemeSlug","params":[{"name":"slug","type":"string"}],"type":"InputTheme"},{"id":42930452,"predicate":"theme","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?Document"},{"name":"settings","type":"flags.3?ThemeSettings"},{"name":"installs_count","type":"int"}],"type":"Theme"},{"id":-199313886,"predicate":"account.themesNotModified","params":[],"type":"account.Themes"},{"id":2137482273,"predicate":"account.themes","params":[{"name":"hash","type":"int"},{"name":"themes","type":"Vector"}],"type":"account.Themes"},{"id":-2112423005,"predicate":"updateTheme","params":[{"name":"theme","type":"Theme"}],"type":"Update"},{"id":-786326563,"predicate":"inputPrivacyKeyAddedByPhone","params":[],"type":"InputPrivacyKey"},{"id":1124062251,"predicate":"privacyKeyAddedByPhone","params":[],"type":"PrivacyKey"},{"id":-2027964103,"predicate":"updateGeoLiveViewed","params":[{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"}],"type":"Update"},{"id":1448076945,"predicate":"updateLoginToken","params":[],"type":"Update"},{"id":1654593920,"predicate":"auth.loginToken","params":[{"name":"expires","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":110008598,"predicate":"auth.loginTokenMigrateTo","params":[{"name":"dc_id","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":957176926,"predicate":"auth.loginTokenSuccess","params":[{"name":"authorization","type":"auth.Authorization"}],"type":"auth.LoginToken"},{"id":1474462241,"predicate":"account.contentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"},{"name":"sensitive_can_change","type":"flags.1?true"}],"type":"account.ContentSettings"},{"id":-1456996667,"predicate":"messages.inactiveChats","params":[{"name":"dates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.InactiveChats"},{"id":-1012849566,"predicate":"baseThemeClassic","params":[],"type":"BaseTheme"},{"id":-69724536,"predicate":"baseThemeDay","params":[],"type":"BaseTheme"},{"id":-1212997976,"predicate":"baseThemeNight","params":[],"type":"BaseTheme"},{"id":1834973166,"predicate":"baseThemeTinted","params":[],"type":"BaseTheme"},{"id":1527845466,"predicate":"baseThemeArctic","params":[],"type":"BaseTheme"},{"id":-1770371538,"predicate":"inputWallPaperNoFile","params":[{"name":"id","type":"long"}],"type":"InputWallPaper"},{"id":-528465642,"predicate":"wallPaperNoFile","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"default","type":"flags.1?true"},{"name":"dark","type":"flags.4?true"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":-1118798639,"predicate":"inputThemeSettings","params":[{"name":"flags","type":"#"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"message_top_color","type":"flags.0?int"},{"name":"message_bottom_color","type":"flags.0?int"},{"name":"wallpaper","type":"flags.1?InputWallPaper"},{"name":"wallpaper_settings","type":"flags.1?WallPaperSettings"}],"type":"InputThemeSettings"},{"id":-1676371894,"predicate":"themeSettings","params":[{"name":"flags","type":"#"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"message_top_color","type":"flags.0?int"},{"name":"message_bottom_color","type":"flags.0?int"},{"name":"wallpaper","type":"flags.1?WallPaper"}],"type":"ThemeSettings"},{"id":1421174295,"predicate":"webPageAttributeTheme","params":[{"name":"flags","type":"#"},{"name":"documents","type":"flags.0?Vector"},{"name":"settings","type":"flags.1?ThemeSettings"}],"type":"WebPageAttribute"},{"id":938909451,"predicate":"updateMessagePollVote","params":[{"name":"poll_id","type":"long"},{"name":"user_id","type":"int"},{"name":"options","type":"Vector"},{"name":"qts","type":"int"}],"type":"Update"},{"id":-1567730343,"predicate":"messageUserVote","params":[{"name":"user_id","type":"int"},{"name":"option","type":"bytes"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":909603888,"predicate":"messageUserVoteInputOption","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":244310238,"predicate":"messageUserVoteMultiple","params":[{"name":"user_id","type":"int"},{"name":"options","type":"Vector"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":136574537,"predicate":"messages.votesList","params":[{"name":"flags","type":"#"},{"name":"count","type":"int"},{"name":"votes","type":"Vector"},{"name":"users","type":"Vector"},{"name":"next_offset","type":"flags.0?string"}],"type":"messages.VotesList"},{"id":-1144565411,"predicate":"keyboardButtonRequestPoll","params":[{"name":"flags","type":"#"},{"name":"quiz","type":"flags.0?Bool"},{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":1981704948,"predicate":"messageEntityBankCard","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-177732982,"predicate":"bankCardOpenUrl","params":[{"name":"url","type":"string"},{"name":"name","type":"string"}],"type":"BankCardOpenUrl"},{"id":1042605427,"predicate":"payments.bankCardData","params":[{"name":"title","type":"string"},{"name":"open_urls","type":"Vector"}],"type":"payments.BankCardData"},{"id":-118740917,"predicate":"peerSelfLocated","params":[{"name":"expires","type":"int"}],"type":"PeerLocated"},{"id":1949890536,"predicate":"dialogFilter","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"non_contacts","type":"flags.1?true"},{"name":"groups","type":"flags.2?true"},{"name":"broadcasts","type":"flags.3?true"},{"name":"bots","type":"flags.4?true"},{"name":"exclude_muted","type":"flags.11?true"},{"name":"exclude_read","type":"flags.12?true"},{"name":"exclude_archived","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"emoticon","type":"flags.25?string"},{"name":"pinned_peers","type":"Vector"},{"name":"include_peers","type":"Vector"},{"name":"exclude_peers","type":"Vector"}],"type":"DialogFilter"},{"id":2004110666,"predicate":"dialogFilterSuggested","params":[{"name":"filter","type":"DialogFilter"},{"name":"description","type":"string"}],"type":"DialogFilterSuggested"},{"id":654302845,"predicate":"updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Update"},{"id":-1512627963,"predicate":"updateDialogFilterOrder","params":[{"name":"order","type":"Vector"}],"type":"Update"},{"id":889491791,"predicate":"updateDialogFilters","params":[],"type":"Update"},{"id":-1237848657,"predicate":"statsDateRangeDays","params":[{"name":"min_date","type":"int"},{"name":"max_date","type":"int"}],"type":"StatsDateRangeDays"},{"id":-884757282,"predicate":"statsAbsValueAndPrev","params":[{"name":"current","type":"double"},{"name":"previous","type":"double"}],"type":"StatsAbsValueAndPrev"},{"id":-875679776,"predicate":"statsPercentValue","params":[{"name":"part","type":"double"},{"name":"total","type":"double"}],"type":"StatsPercentValue"},{"id":1244130093,"predicate":"statsGraphAsync","params":[{"name":"token","type":"string"}],"type":"StatsGraph"},{"id":-1092839390,"predicate":"statsGraphError","params":[{"name":"error","type":"string"}],"type":"StatsGraph"},{"id":-1901828938,"predicate":"statsGraph","params":[{"name":"flags","type":"#"},{"name":"json","type":"DataJSON"},{"name":"zoom_token","type":"flags.0?string"}],"type":"StatsGraph"},{"id":-1387279939,"predicate":"messageInteractionCounters","params":[{"name":"msg_id","type":"int"},{"name":"views","type":"int"},{"name":"forwards","type":"int"}],"type":"MessageInteractionCounters"},{"id":-1107852396,"predicate":"stats.broadcastStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"followers","type":"StatsAbsValueAndPrev"},{"name":"views_per_post","type":"StatsAbsValueAndPrev"},{"name":"shares_per_post","type":"StatsAbsValueAndPrev"},{"name":"enabled_notifications","type":"StatsPercentValue"},{"name":"growth_graph","type":"StatsGraph"},{"name":"followers_graph","type":"StatsGraph"},{"name":"mute_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"interactions_graph","type":"StatsGraph"},{"name":"iv_interactions_graph","type":"StatsGraph"},{"name":"views_by_source_graph","type":"StatsGraph"},{"name":"new_followers_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"recent_message_interactions","type":"Vector"}],"type":"stats.BroadcastStats"},{"id":-428884101,"predicate":"inputMediaDice","params":[{"name":"emoticon","type":"string"}],"type":"InputMedia"},{"id":1065280907,"predicate":"messageMediaDice","params":[{"name":"value","type":"int"},{"name":"emoticon","type":"string"}],"type":"MessageMedia"},{"id":-427863538,"predicate":"inputStickerSetDice","params":[{"name":"emoticon","type":"string"}],"type":"InputStickerSet"},{"id":-1728664459,"predicate":"help.promoDataEmpty","params":[{"name":"expires","type":"int"}],"type":"help.PromoData"},{"id":-1942390465,"predicate":"help.promoData","params":[{"name":"flags","type":"#"},{"name":"proxy","type":"flags.0?true"},{"name":"expires","type":"int"},{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"psa_type","type":"flags.1?string"},{"name":"psa_message","type":"flags.2?string"}],"type":"help.PromoData"},{"id":-567037804,"predicate":"videoSize","params":[{"name":"flags","type":"#"},{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"},{"name":"video_start_ts","type":"flags.0?double"}],"type":"VideoSize"},{"id":643940105,"predicate":"updatePhoneCallSignalingData","params":[{"name":"phone_call_id","type":"long"},{"name":"data","type":"bytes"}],"type":"Update"},{"id":1634294960,"predicate":"chatInvitePeek","params":[{"name":"chat","type":"Chat"},{"name":"expires","type":"int"}],"type":"ChatInvite"},{"id":418631927,"predicate":"statsGroupTopPoster","params":[{"name":"user_id","type":"int"},{"name":"messages","type":"int"},{"name":"avg_chars","type":"int"}],"type":"StatsGroupTopPoster"},{"id":1611985938,"predicate":"statsGroupTopAdmin","params":[{"name":"user_id","type":"int"},{"name":"deleted","type":"int"},{"name":"kicked","type":"int"},{"name":"banned","type":"int"}],"type":"StatsGroupTopAdmin"},{"id":831924812,"predicate":"statsGroupTopInviter","params":[{"name":"user_id","type":"int"},{"name":"invitations","type":"int"}],"type":"StatsGroupTopInviter"},{"id":-276825834,"predicate":"stats.megagroupStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"members","type":"StatsAbsValueAndPrev"},{"name":"messages","type":"StatsAbsValueAndPrev"},{"name":"viewers","type":"StatsAbsValueAndPrev"},{"name":"posters","type":"StatsAbsValueAndPrev"},{"name":"growth_graph","type":"StatsGraph"},{"name":"members_graph","type":"StatsGraph"},{"name":"new_members_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"messages_graph","type":"StatsGraph"},{"name":"actions_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"weekdays_graph","type":"StatsGraph"},{"name":"top_posters","type":"Vector"},{"name":"top_admins","type":"Vector"},{"name":"top_inviters","type":"Vector"},{"name":"users","type":"Vector"}],"type":"stats.MegagroupStats"},{"id":-1096616924,"predicate":"globalPrivacySettings","params":[{"name":"flags","type":"#"},{"name":"archive_and_mute_new_noncontact_peers","type":"flags.0?Bool"}],"type":"GlobalPrivacySettings"},{"id":1667228533,"predicate":"phoneConnectionWebrtc","params":[{"name":"flags","type":"#"},{"name":"turn","type":"flags.0?true"},{"name":"stun","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"username","type":"string"},{"name":"password","type":"string"}],"type":"PhoneConnection"},{"id":1107543535,"predicate":"help.countryCode","params":[{"name":"flags","type":"#"},{"name":"country_code","type":"string"},{"name":"prefixes","type":"flags.0?Vector"},{"name":"patterns","type":"flags.1?Vector"}],"type":"help.CountryCode"},{"id":-1014526429,"predicate":"help.country","params":[{"name":"flags","type":"#"},{"name":"hidden","type":"flags.0?true"},{"name":"iso2","type":"string"},{"name":"default_name","type":"string"},{"name":"name","type":"flags.1?string"},{"name":"country_codes","type":"Vector"}],"type":"help.Country"},{"id":-1815339214,"predicate":"help.countriesListNotModified","params":[],"type":"help.CountriesList"},{"id":-2016381538,"predicate":"help.countriesList","params":[{"name":"countries","type":"Vector"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":1163625789,"predicate":"messageViews","params":[{"name":"flags","type":"#"},{"name":"views","type":"flags.0?int"},{"name":"forwards","type":"flags.1?int"},{"name":"replies","type":"flags.2?MessageReplies"}],"type":"MessageViews"},{"id":1854571743,"predicate":"updateChannelMessageForwards","params":[{"name":"channel_id","type":"int"},{"name":"id","type":"int"},{"name":"forwards","type":"int"}],"type":"Update"},{"id":-96535659,"predicate":"photoSizeProgressive","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"sizes","type":"Vector"}],"type":"PhotoSize"},{"id":-1228606141,"predicate":"messages.messageViews","params":[{"name":"views","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.MessageViews"},{"id":482860628,"predicate":"updateReadChannelDiscussionInbox","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"},{"name":"broadcast_id","type":"flags.0?int"},{"name":"broadcast_post","type":"flags.0?int"}],"type":"Update"},{"id":1178116716,"predicate":"updateReadChannelDiscussionOutbox","params":[{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Update"},{"id":-170029155,"predicate":"messages.discussionMessage","params":[{"name":"flags","type":"#"},{"name":"messages","type":"Vector"},{"name":"max_id","type":"flags.0?int"},{"name":"read_inbox_max_id","type":"flags.1?int"},{"name":"read_outbox_max_id","type":"flags.2?int"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.DiscussionMessage"},{"id":-1495959709,"predicate":"messageReplyHeader","params":[{"name":"flags","type":"#"},{"name":"reply_to_msg_id","type":"int"},{"name":"reply_to_peer_id","type":"flags.0?Peer"},{"name":"reply_to_top_id","type":"flags.1?int"}],"type":"MessageReplyHeader"},{"id":1093204652,"predicate":"messageReplies","params":[{"name":"flags","type":"#"},{"name":"comments","type":"flags.0?true"},{"name":"replies","type":"int"},{"name":"replies_pts","type":"int"},{"name":"recent_repliers","type":"flags.1?Vector"},{"name":"channel_id","type":"flags.0?int"},{"name":"max_id","type":"flags.2?int"},{"name":"read_max_id","type":"flags.3?int"}],"type":"MessageReplies"},{"id":610945826,"predicate":"updatePeerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"blocked","type":"Bool"}],"type":"Update"},{"id":-386039788,"predicate":"peerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"date","type":"int"}],"type":"PeerBlocked"},{"id":1796675352,"predicate":"updateChannelUserTyping","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-1392895362,"predicate":"inputMessageCallbackQuery","params":[{"name":"id","type":"int"},{"name":"query_id","type":"long"}],"type":"InputMessage"},{"id":453242886,"predicate":"channelParticipantLeft","params":[{"name":"peer","type":"Peer"}],"type":"ChannelParticipant"},{"id":-531931925,"predicate":"channelParticipantsMentions","params":[{"name":"flags","type":"#"},{"name":"q","type":"flags.0?string"},{"name":"top_msg_id","type":"flags.1?int"}],"type":"ChannelParticipantsFilter"},{"id":-309990731,"predicate":"updatePinnedMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-2054649973,"predicate":"updatePinnedChannelMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"channel_id","type":"int"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":464520273,"predicate":"inputMessagesFilterPinned","params":[],"type":"MessagesFilter"},{"id":-1986399595,"predicate":"stats.messageStats","params":[{"name":"views_graph","type":"StatsGraph"}],"type":"stats.MessageStats"},{"id":-1730095465,"predicate":"messageActionGeoProximityReached","params":[{"name":"from_id","type":"Peer"},{"name":"to_id","type":"Peer"},{"name":"distance","type":"int"}],"type":"MessageAction"},{"id":-668906175,"predicate":"photoPathSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":-651419003,"predicate":"speakingInGroupCallAction","params":[],"type":"SendMessageAction"},{"id":2004925620,"predicate":"groupCallDiscarded","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"duration","type":"int"}],"type":"GroupCall"},{"id":-711498484,"predicate":"groupCall","params":[{"name":"flags","type":"#"},{"name":"join_muted","type":"flags.1?true"},{"name":"can_change_join_muted","type":"flags.2?true"},{"name":"join_date_asc","type":"flags.6?true"},{"name":"schedule_start_subscribed","type":"flags.8?true"},{"name":"can_start_video","type":"flags.9?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"participants_count","type":"int"},{"name":"title","type":"flags.3?string"},{"name":"stream_dc_id","type":"flags.4?int"},{"name":"record_start_date","type":"flags.5?int"},{"name":"schedule_date","type":"flags.7?int"},{"name":"unmuted_video_count","type":"flags.10?int"},{"name":"unmuted_video_limit","type":"int"},{"name":"version","type":"int"}],"type":"GroupCall"},{"id":-659913713,"predicate":"inputGroupCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGroupCall"},{"id":2047704898,"predicate":"messageActionGroupCall","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"duration","type":"flags.0?int"}],"type":"MessageAction"},{"id":1991897370,"predicate":"messageActionInviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-341428482,"predicate":"groupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"left","type":"flags.1?true"},{"name":"can_self_unmute","type":"flags.2?true"},{"name":"just_joined","type":"flags.4?true"},{"name":"versioned","type":"flags.5?true"},{"name":"min","type":"flags.8?true"},{"name":"muted_by_you","type":"flags.9?true"},{"name":"volume_by_admin","type":"flags.10?true"},{"name":"self","type":"flags.12?true"},{"name":"video_joined","type":"flags.15?true"},{"name":"peer","type":"Peer"},{"name":"date","type":"int"},{"name":"active_date","type":"flags.3?int"},{"name":"source","type":"int"},{"name":"volume","type":"flags.7?int"},{"name":"about","type":"flags.11?string"},{"name":"raise_hand_rating","type":"flags.13?long"},{"name":"video","type":"flags.6?GroupCallParticipantVideo"},{"name":"presentation","type":"flags.14?GroupCallParticipantVideo"}],"type":"GroupCallParticipant"},{"id":321954198,"predicate":"updateChat","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":-219423922,"predicate":"updateGroupCallParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"Update"},{"id":-1537295973,"predicate":"updateGroupCall","params":[{"name":"chat_id","type":"int"},{"name":"call","type":"GroupCall"}],"type":"Update"},{"id":-1636664659,"predicate":"phone.groupCall","params":[{"name":"call","type":"GroupCall"},{"name":"participants","type":"Vector"},{"name":"participants_next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.GroupCall"},{"id":-193506890,"predicate":"phone.groupParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"version","type":"int"}],"type":"phone.GroupParticipants"},{"id":813821341,"predicate":"inlineQueryPeerTypeSameBotPM","params":[],"type":"InlineQueryPeerType"},{"id":-2093215828,"predicate":"inlineQueryPeerTypePM","params":[],"type":"InlineQueryPeerType"},{"id":-681130742,"predicate":"inlineQueryPeerTypeChat","params":[],"type":"InlineQueryPeerType"},{"id":1589952067,"predicate":"inlineQueryPeerTypeMegagroup","params":[],"type":"InlineQueryPeerType"},{"id":1664413338,"predicate":"inlineQueryPeerTypeBroadcast","params":[],"type":"InlineQueryPeerType"},{"id":589338437,"predicate":"channelAdminLogEventActionStartGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-610299584,"predicate":"channelAdminLogEventActionDiscardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-115071790,"predicate":"channelAdminLogEventActionParticipantMute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-431740480,"predicate":"channelAdminLogEventActionParticipantUnmute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1456906823,"predicate":"channelAdminLogEventActionToggleGroupCallSetting","params":[{"name":"join_muted","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-1966921727,"predicate":"inputPaymentCredentialsGooglePay","params":[{"name":"payment_token","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":375566091,"predicate":"messages.historyImport","params":[{"name":"id","type":"long"}],"type":"messages.HistoryImport"},{"id":-606432698,"predicate":"sendMessageHistoryImportAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":1578088377,"predicate":"messages.historyImportParsed","params":[{"name":"flags","type":"#"},{"name":"pm","type":"flags.0?true"},{"name":"group","type":"flags.1?true"},{"name":"title","type":"flags.2?string"}],"type":"messages.HistoryImportParsed"},{"id":-170010905,"predicate":"inputReportReasonFake","params":[],"type":"ReportReason"},{"id":-275956116,"predicate":"messages.affectedFoundMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"},{"name":"messages","type":"Vector"}],"type":"messages.AffectedFoundMessages"},{"id":-1441072131,"predicate":"messageActionSetMessagesTTL","params":[{"name":"period","type":"int"}],"type":"MessageAction"},{"id":-1147422299,"predicate":"updatePeerHistoryTTL","params":[{"name":"flags","type":"#"},{"name":"peer","type":"Peer"},{"name":"ttl_period","type":"flags.0?int"}],"type":"Update"},{"id":-206342113,"predicate":"updateChatParticipant","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"actor_id","type":"int"},{"name":"user_id","type":"int"},{"name":"prev_participant","type":"flags.0?ChatParticipant"},{"name":"new_participant","type":"flags.1?ChatParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":2146218476,"predicate":"updateChannelParticipant","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"int"},{"name":"date","type":"int"},{"name":"actor_id","type":"int"},{"name":"user_id","type":"int"},{"name":"prev_participant","type":"flags.0?ChannelParticipant"},{"name":"new_participant","type":"flags.1?ChannelParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":133777546,"predicate":"updateBotStopped","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"},{"name":"stopped","type":"Bool"},{"name":"qts","type":"int"}],"type":"Update"},{"id":507405952,"predicate":"chatInviteImporter","params":[{"name":"user_id","type":"int"},{"name":"date","type":"int"}],"type":"ChatInviteImporter"},{"id":-1111085620,"predicate":"messages.exportedChatInvites","params":[{"name":"count","type":"int"},{"name":"invites","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvites"},{"id":410107472,"predicate":"messages.exportedChatInvite","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":572915951,"predicate":"messages.exportedChatInviteReplaced","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":-2118733814,"predicate":"messages.chatInviteImporters","params":[{"name":"count","type":"int"},{"name":"importers","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatInviteImporters"},{"id":-539872497,"predicate":"chatAdminWithInvites","params":[{"name":"admin_id","type":"int"},{"name":"invites_count","type":"int"},{"name":"revoked_invites_count","type":"int"}],"type":"ChatAdminWithInvites"},{"id":-1231326505,"predicate":"messages.chatAdminsWithInvites","params":[{"name":"admins","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatAdminsWithInvites"},{"id":1557846647,"predicate":"channelAdminLogEventActionParticipantJoinByInvite","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1515256996,"predicate":"channelAdminLogEventActionExportedInviteDelete","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1091179342,"predicate":"channelAdminLogEventActionExportedInviteRevoke","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":-384910503,"predicate":"channelAdminLogEventActionExportedInviteEdit","params":[{"name":"prev_invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1048537159,"predicate":"channelAdminLogEventActionParticipantVolume","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1855199800,"predicate":"channelAdminLogEventActionChangeHistoryTTL","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":-1571952873,"predicate":"messages.checkedHistoryImportPeer","params":[{"name":"confirm_text","type":"string"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-1146808775,"predicate":"inputGroupCallStream","params":[{"name":"call","type":"InputGroupCall"},{"name":"time_ms","type":"long"},{"name":"scale","type":"int"}],"type":"InputFileLocation"},{"id":-1343921601,"predicate":"phone.joinAsPeers","params":[{"name":"peers","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.JoinAsPeers"},{"id":541839704,"predicate":"phone.exportedGroupCallInvite","params":[{"name":"link","type":"string"}],"type":"phone.ExportedGroupCallInvite"},{"id":-672693723,"predicate":"inputBotInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":894081801,"predicate":"botInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1281329567,"predicate":"messageActionGroupCallScheduled","params":[{"name":"call","type":"InputGroupCall"},{"name":"schedule_date","type":"int"}],"type":"MessageAction"},{"id":-592373577,"predicate":"groupCallParticipantVideoSourceGroup","params":[{"name":"semantics","type":"string"},{"name":"sources","type":"Vector"}],"type":"GroupCallParticipantVideoSourceGroup"},{"id":1735736008,"predicate":"groupCallParticipantVideo","params":[{"name":"flags","type":"#"},{"name":"paused","type":"flags.0?true"},{"name":"endpoint","type":"string"},{"name":"source_groups","type":"Vector"},{"name":"audio_source","type":"flags.1?int"}],"type":"GroupCallParticipantVideo"},{"id":192428418,"predicate":"updateGroupCallConnection","params":[{"name":"flags","type":"#"},{"name":"presentation","type":"flags.0?true"},{"name":"params","type":"DataJSON"}],"type":"Update"},{"id":-2046910401,"predicate":"stickers.suggestedShortName","params":[{"name":"short_name","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":795652779,"predicate":"botCommandScopeDefault","params":[],"type":"BotCommandScope"},{"id":1011811544,"predicate":"botCommandScopeUsers","params":[],"type":"BotCommandScope"},{"id":1877059713,"predicate":"botCommandScopeChats","params":[],"type":"BotCommandScope"},{"id":-1180016534,"predicate":"botCommandScopeChatAdmins","params":[],"type":"BotCommandScope"},{"id":-610432643,"predicate":"botCommandScopePeer","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":1071145937,"predicate":"botCommandScopePeerAdmins","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":169026035,"predicate":"botCommandScopePeerUser","params":[{"name":"peer","type":"InputPeer"},{"name":"user_id","type":"InputUser"}],"type":"BotCommandScope"},{"id":-478701471,"predicate":"account.resetPasswordFailedWait","params":[{"name":"retry_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-370148227,"predicate":"account.resetPasswordRequestedWait","params":[{"name":"until_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-383330754,"predicate":"account.resetPasswordOk","params":[],"type":"account.ResetPasswordResult"},{"id":-813823885,"predicate":"updateBotCommands","params":[{"name":"peer","type":"Peer"},{"name":"bot_id","type":"int"},{"name":"commands","type":"Vector"}],"type":"Update"}],"methods":[{"id":-878758099,"method":"invokeAfterMsg","params":[{"name":"msg_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":1036301552,"method":"invokeAfterMsgs","params":[{"name":"msg_ids","type":"Vector"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1502141361,"method":"auth.sendCode","params":[{"name":"phone_number","type":"string"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":-2131827673,"method":"auth.signUp","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"auth.Authorization"},{"id":-1126886015,"method":"auth.signIn","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"auth.Authorization"},{"id":1461180992,"method":"auth.logOut","params":[],"type":"Bool"},{"id":-1616179942,"method":"auth.resetAuthorizations","params":[],"type":"Bool"},{"id":-440401971,"method":"auth.exportAuthorization","params":[{"name":"dc_id","type":"int"}],"type":"auth.ExportedAuthorization"},{"id":-470837741,"method":"auth.importAuthorization","params":[{"name":"id","type":"int"},{"name":"bytes","type":"bytes"}],"type":"auth.Authorization"},{"id":-841733627,"method":"auth.bindTempAuthKey","params":[{"name":"perm_auth_key_id","type":"long"},{"name":"nonce","type":"long"},{"name":"expires_at","type":"int"},{"name":"encrypted_message","type":"bytes"}],"type":"Bool"},{"id":1754754159,"method":"account.registerDevice","params":[{"name":"flags","type":"#"},{"name":"no_muted","type":"flags.0?true"},{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"app_sandbox","type":"Bool"},{"name":"secret","type":"bytes"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":813089983,"method":"account.unregisterDevice","params":[{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":-2067899501,"method":"account.updateNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"},{"name":"settings","type":"InputPeerNotifySettings"}],"type":"Bool"},{"id":313765169,"method":"account.getNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"}],"type":"PeerNotifySettings"},{"id":-612493497,"method":"account.resetNotifySettings","params":[],"type":"Bool"},{"id":2018596725,"method":"account.updateProfile","params":[{"name":"flags","type":"#"},{"name":"first_name","type":"flags.0?string"},{"name":"last_name","type":"flags.1?string"},{"name":"about","type":"flags.2?string"}],"type":"User"},{"id":1713919532,"method":"account.updateStatus","params":[{"name":"offline","type":"Bool"}],"type":"Bool"},{"id":-1430579357,"method":"account.getWallPapers","params":[{"name":"hash","type":"int"}],"type":"account.WallPapers"},{"id":-977650298,"method":"account.reportPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":227648840,"method":"users.getUsers","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-902781519,"method":"users.getFullUser","params":[{"name":"id","type":"InputUser"}],"type":"UserFull"},{"id":749357634,"method":"contacts.getContactIDs","params":[{"name":"hash","type":"int"}],"type":"Vector"},{"id":-995929106,"method":"contacts.getStatuses","params":[],"type":"Vector"},{"id":-1071414113,"method":"contacts.getContacts","params":[{"name":"hash","type":"int"}],"type":"contacts.Contacts"},{"id":746589157,"method":"contacts.importContacts","params":[{"name":"contacts","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":157945344,"method":"contacts.deleteContacts","params":[{"name":"id","type":"Vector"}],"type":"Updates"},{"id":269745566,"method":"contacts.deleteByPhones","params":[{"name":"phones","type":"Vector"}],"type":"Bool"},{"id":1758204945,"method":"contacts.block","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-1096393392,"method":"contacts.unblock","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-176409329,"method":"contacts.getBlocked","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"contacts.Blocked"},{"id":1673946374,"method":"messages.getMessages","params":[{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1594999949,"method":"messages.getDialogs","params":[{"name":"flags","type":"#"},{"name":"exclude_pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"offset_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Dialogs"},{"id":-591691168,"method":"messages.getHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":204812012,"method":"messages.search","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"q","type":"string"},{"name":"from_id","type":"flags.0?InputPeer"},{"name":"top_msg_id","type":"flags.1?int"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":238054714,"method":"messages.readHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedMessages"},{"id":469850889,"method":"messages.deleteHistory","params":[{"name":"flags","type":"#"},{"name":"just_clear","type":"flags.0?true"},{"name":"revoke","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedHistory"},{"id":-443640366,"method":"messages.deleteMessages","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":94983360,"method":"messages.receivedMessages","params":[{"name":"max_id","type":"int"}],"type":"Vector"},{"id":1486110434,"method":"messages.setTyping","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"action","type":"SendMessageAction"}],"type":"Bool"},{"id":1376532592,"method":"messages.sendMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":881978281,"method":"messages.sendMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"media","type":"InputMedia"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-637606386,"method":"messages.forwardMessages","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"with_my_score","type":"flags.8?true"},{"name":"from_peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"random_id","type":"Vector"},{"name":"to_peer","type":"InputPeer"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-820669733,"method":"messages.reportSpam","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":913498268,"method":"messages.getPeerSettings","params":[{"name":"peer","type":"InputPeer"}],"type":"PeerSettings"},{"id":-1991005362,"method":"messages.report","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1013621127,"method":"messages.getChats","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":998448230,"method":"messages.getFullChat","params":[{"name":"chat_id","type":"int"}],"type":"messages.ChatFull"},{"id":-599447467,"method":"messages.editChatTitle","params":[{"name":"chat_id","type":"int"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-900957736,"method":"messages.editChatPhoto","params":[{"name":"chat_id","type":"int"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":-106911223,"method":"messages.addChatUser","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"fwd_limit","type":"int"}],"type":"Updates"},{"id":-986430054,"method":"messages.deleteChatUser","params":[{"name":"flags","type":"#"},{"name":"revoke_history","type":"flags.0?true"},{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"Updates"},{"id":164303470,"method":"messages.createChat","params":[{"name":"users","type":"Vector"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-304838614,"method":"updates.getState","params":[],"type":"updates.State"},{"id":630429265,"method":"updates.getDifference","params":[{"name":"flags","type":"#"},{"name":"pts","type":"int"},{"name":"pts_total_limit","type":"flags.0?int"},{"name":"date","type":"int"},{"name":"qts","type":"int"}],"type":"updates.Difference"},{"id":1926525996,"method":"photos.updateProfilePhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"photos.Photo"},{"id":-1980559511,"method":"photos.uploadProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"photos.Photo"},{"id":-2016444625,"method":"photos.deletePhotos","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-1291540959,"method":"upload.saveFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":-1319462148,"method":"upload.getFile","params":[{"name":"flags","type":"#"},{"name":"precise","type":"flags.0?true"},{"name":"cdn_supported","type":"flags.1?true"},{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.File"},{"id":-990308245,"method":"help.getConfig","params":[],"type":"Config"},{"id":531836966,"method":"help.getNearestDc","params":[],"type":"NearestDc"},{"id":1378703997,"method":"help.getAppUpdate","params":[{"name":"source","type":"string"}],"type":"help.AppUpdate"},{"id":1295590211,"method":"help.getInviteText","params":[],"type":"help.InviteText"},{"id":-1848823128,"method":"photos.getUserPhotos","params":[{"name":"user_id","type":"InputUser"},{"name":"offset","type":"int"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"photos.Photos"},{"id":651135312,"method":"messages.getDhConfig","params":[{"name":"version","type":"int"},{"name":"random_length","type":"int"}],"type":"messages.DhConfig"},{"id":-162681021,"method":"messages.requestEncryption","params":[{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1035731989,"method":"messages.acceptEncryption","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"g_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":-208425312,"method":"messages.discardEncryption","params":[{"name":"flags","type":"#"},{"name":"delete_history","type":"flags.0?true"},{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":2031374829,"method":"messages.setEncryptedTyping","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"typing","type":"Bool"}],"type":"Bool"},{"id":2135648522,"method":"messages.readEncryptedHistory","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"max_date","type":"int"}],"type":"Bool"},{"id":1157265941,"method":"messages.sendEncrypted","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1431914525,"method":"messages.sendEncryptedFile","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"},{"name":"file","type":"InputEncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":852769188,"method":"messages.sendEncryptedService","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1436924774,"method":"messages.receivedQueue","params":[{"name":"max_qts","type":"int"}],"type":"Vector"},{"id":1259113487,"method":"messages.reportEncryptedSpam","params":[{"name":"peer","type":"InputEncryptedChat"}],"type":"Bool"},{"id":-562337987,"method":"upload.saveBigFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"file_total_parts","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":-1043505495,"method":"initConnection","params":[{"name":"flags","type":"#"},{"name":"api_id","type":"int"},{"name":"device_model","type":"string"},{"name":"system_version","type":"string"},{"name":"app_version","type":"string"},{"name":"system_lang_code","type":"string"},{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"proxy","type":"flags.0?InputClientProxy"},{"name":"params","type":"flags.1?JSONValue"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1663104819,"method":"help.getSupport","params":[],"type":"help.Support"},{"id":916930423,"method":"messages.readMessageContents","params":[{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":655677548,"method":"account.checkUsername","params":[{"name":"username","type":"string"}],"type":"Bool"},{"id":1040964988,"method":"account.updateUsername","params":[{"name":"username","type":"string"}],"type":"User"},{"id":301470424,"method":"contacts.search","params":[{"name":"q","type":"string"},{"name":"limit","type":"int"}],"type":"contacts.Found"},{"id":-623130288,"method":"account.getPrivacy","params":[{"name":"key","type":"InputPrivacyKey"}],"type":"account.PrivacyRules"},{"id":-906486552,"method":"account.setPrivacy","params":[{"name":"key","type":"InputPrivacyKey"},{"name":"rules","type":"Vector"}],"type":"account.PrivacyRules"},{"id":1099779595,"method":"account.deleteAccount","params":[{"name":"reason","type":"string"}],"type":"Bool"},{"id":150761757,"method":"account.getAccountTTL","params":[],"type":"AccountDaysTTL"},{"id":608323678,"method":"account.setAccountTTL","params":[{"name":"ttl","type":"AccountDaysTTL"}],"type":"Bool"},{"id":-627372787,"method":"invokeWithLayer","params":[{"name":"layer","type":"int"},{"name":"query","type":"!X"}],"type":"X"},{"id":-113456221,"method":"contacts.resolveUsername","params":[{"name":"username","type":"string"}],"type":"contacts.ResolvedPeer"},{"id":-2108208411,"method":"account.sendChangePhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1891839707,"method":"account.changePhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"User"},{"id":71126828,"method":"messages.getStickers","params":[{"name":"emoticon","type":"string"},{"name":"hash","type":"int"}],"type":"messages.Stickers"},{"id":479598769,"method":"messages.getAllStickers","params":[{"name":"hash","type":"int"}],"type":"messages.AllStickers"},{"id":954152242,"method":"account.updateDeviceLocked","params":[{"name":"period","type":"int"}],"type":"Bool"},{"id":1738800940,"method":"auth.importBotAuthorization","params":[{"name":"flags","type":"int"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"bot_auth_token","type":"string"}],"type":"auth.Authorization"},{"id":-1956073268,"method":"messages.getWebPagePreview","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"MessageMedia"},{"id":-484392616,"method":"account.getAuthorizations","params":[],"type":"account.Authorizations"},{"id":-545786948,"method":"account.resetAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1418342645,"method":"account.getPassword","params":[],"type":"account.Password"},{"id":-1663767815,"method":"account.getPasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"account.PasswordSettings"},{"id":-1516564433,"method":"account.updatePasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"new_settings","type":"account.PasswordInputSettings"}],"type":"Bool"},{"id":-779399914,"method":"auth.checkPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"auth.Authorization"},{"id":-661144474,"method":"auth.requestPasswordRecovery","params":[],"type":"auth.PasswordRecovery"},{"id":923364464,"method":"auth.recoverPassword","params":[{"name":"flags","type":"#"},{"name":"code","type":"string"},{"name":"new_settings","type":"flags.0?account.PasswordInputSettings"}],"type":"auth.Authorization"},{"id":-1080796745,"method":"invokeWithoutUpdates","params":[{"name":"query","type":"!X"}],"type":"X"},{"id":347716823,"method":"messages.exportChatInvite","params":[{"name":"flags","type":"#"},{"name":"legacy_revoke_permanent","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"ExportedChatInvite"},{"id":1051570619,"method":"messages.checkChatInvite","params":[{"name":"hash","type":"string"}],"type":"ChatInvite"},{"id":1817183516,"method":"messages.importChatInvite","params":[{"name":"hash","type":"string"}],"type":"Updates"},{"id":639215886,"method":"messages.getStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"messages.StickerSet"},{"id":-946871200,"method":"messages.installStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"archived","type":"Bool"}],"type":"messages.StickerSetInstallResult"},{"id":-110209570,"method":"messages.uninstallStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":-421563528,"method":"messages.startBot","params":[{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"long"},{"name":"start_param","type":"string"}],"type":"Updates"},{"id":-1877938321,"method":"help.getAppChangelog","params":[{"name":"prev_app_version","type":"string"}],"type":"Updates"},{"id":1468322785,"method":"messages.getMessagesViews","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"increment","type":"Bool"}],"type":"messages.MessageViews"},{"id":-871347913,"method":"channels.readHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":-2067661490,"method":"channels.deleteMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":-787622117,"method":"channels.deleteUserHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"}],"type":"messages.AffectedHistory"},{"id":-32999408,"method":"channels.reportSpam","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1383294429,"method":"channels.getMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":306054633,"method":"channels.getParticipants","params":[{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelParticipantsFilter"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"channels.ChannelParticipants"},{"id":-1599378234,"method":"channels.getParticipant","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"}],"type":"channels.ChannelParticipant"},{"id":176122811,"method":"channels.getChannels","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":141781513,"method":"channels.getFullChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.ChatFull"},{"id":1029681423,"method":"channels.createChannel","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.0?true"},{"name":"megagroup","type":"flags.1?true"},{"name":"for_import","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"about","type":"string"},{"name":"geo_point","type":"flags.2?InputGeoPoint"},{"name":"address","type":"flags.2?string"}],"type":"Updates"},{"id":-751007486,"method":"channels.editAdmin","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"string"}],"type":"Updates"},{"id":1450044624,"method":"channels.editTitle","params":[{"name":"channel","type":"InputChannel"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-248621111,"method":"channels.editPhoto","params":[{"name":"channel","type":"InputChannel"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":283557164,"method":"channels.checkUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":890549214,"method":"channels.updateUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":615851205,"method":"channels.joinChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-130635115,"method":"channels.leaveChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":429865580,"method":"channels.inviteToChannel","params":[{"name":"channel","type":"InputChannel"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":-1072619549,"method":"channels.deleteChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":51854712,"method":"updates.getChannelDifference","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelMessagesFilter"},{"name":"pts","type":"int"},{"name":"limit","type":"int"}],"type":"updates.ChannelDifference"},{"id":-1444503762,"method":"messages.editChatAdmin","params":[{"name":"chat_id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"is_admin","type":"Bool"}],"type":"Bool"},{"id":363051235,"method":"messages.migrateChat","params":[{"name":"chat_id","type":"int"}],"type":"Updates"},{"id":1271290010,"method":"messages.searchGlobal","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"q","type":"string"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":2016638777,"method":"messages.reorderStickerSets","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":864953444,"method":"messages.getDocumentByHash","params":[{"name":"sha256","type":"bytes"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":-2084618926,"method":"messages.getSavedGifs","params":[{"name":"hash","type":"int"}],"type":"messages.SavedGifs"},{"id":846868683,"method":"messages.saveGif","params":[{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":1364105629,"method":"messages.getInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"geo_point","type":"flags.0?InputGeoPoint"},{"name":"query","type":"string"},{"name":"offset","type":"string"}],"type":"messages.BotResults"},{"id":-346119674,"method":"messages.setInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"private","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"next_offset","type":"flags.2?string"},{"name":"switch_pm","type":"flags.3?InlineBotSwitchPM"}],"type":"Bool"},{"id":570955184,"method":"messages.sendInlineBotResult","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"hide_via","type":"flags.11?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"random_id","type":"long"},{"name":"query_id","type":"long"},{"name":"id","type":"string"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-432034325,"method":"channels.exportMessageLink","params":[{"name":"flags","type":"#"},{"name":"grouped","type":"flags.0?true"},{"name":"thread","type":"flags.1?true"},{"name":"channel","type":"InputChannel"},{"name":"id","type":"int"}],"type":"ExportedMessageLink"},{"id":527021574,"method":"channels.toggleSignatures","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":1056025023,"method":"auth.resendCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"auth.SentCode"},{"id":520357240,"method":"auth.cancelCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"Bool"},{"id":-39416522,"method":"messages.getMessageEditData","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"messages.MessageEditData"},{"id":1224152952,"method":"messages.editMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.15?int"}],"type":"Updates"},{"id":-2091549254,"method":"messages.editInlineBotMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":-1824339449,"method":"messages.getBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"game","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"data","type":"flags.0?bytes"},{"name":"password","type":"flags.2?InputCheckPasswordSRP"}],"type":"messages.BotCallbackAnswer"},{"id":-712043766,"method":"messages.setBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"Bool"},{"id":-728224331,"method":"contacts.getTopPeers","params":[{"name":"flags","type":"#"},{"name":"correspondents","type":"flags.0?true"},{"name":"bots_pm","type":"flags.1?true"},{"name":"bots_inline","type":"flags.2?true"},{"name":"phone_calls","type":"flags.3?true"},{"name":"forward_users","type":"flags.4?true"},{"name":"forward_chats","type":"flags.5?true"},{"name":"groups","type":"flags.10?true"},{"name":"channels","type":"flags.15?true"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"contacts.TopPeers"},{"id":451113900,"method":"contacts.resetTopPeerRating","params":[{"name":"category","type":"TopPeerCategory"},{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-462373635,"method":"messages.getPeerDialogs","params":[{"name":"peers","type":"Vector"}],"type":"messages.PeerDialogs"},{"id":-1137057461,"method":"messages.saveDraft","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"peer","type":"InputPeer"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":1782549861,"method":"messages.getAllDrafts","params":[],"type":"Updates"},{"id":766298703,"method":"messages.getFeaturedStickers","params":[{"name":"hash","type":"int"}],"type":"messages.FeaturedStickers"},{"id":1527873830,"method":"messages.readFeaturedStickers","params":[{"name":"id","type":"Vector"}],"type":"Bool"},{"id":1587647177,"method":"messages.getRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"hash","type":"int"}],"type":"messages.RecentStickers"},{"id":958863608,"method":"messages.saveRecentSticker","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":-1986437075,"method":"messages.clearRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"}],"type":"Bool"},{"id":1475442322,"method":"messages.getArchivedStickers","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"offset_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.ArchivedStickers"},{"id":457157256,"method":"account.sendConfirmPhoneCode","params":[{"name":"hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1596029123,"method":"account.confirmPhone","params":[{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":-122669393,"method":"channels.getAdminedPublicChannels","params":[{"name":"flags","type":"#"},{"name":"by_location","type":"flags.0?true"},{"name":"check_limit","type":"flags.1?true"}],"type":"messages.Chats"},{"id":1706608543,"method":"messages.getMaskStickers","params":[{"name":"hash","type":"int"}],"type":"messages.AllStickers"},{"id":-866424884,"method":"messages.getAttachedStickers","params":[{"name":"media","type":"InputStickeredMedia"}],"type":"Vector"},{"id":-1907842680,"method":"auth.dropTempAuthKeys","params":[{"name":"except_auth_keys","type":"Vector"}],"type":"Bool"},{"id":-1896289088,"method":"messages.setGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Updates"},{"id":363700068,"method":"messages.setInlineGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Bool"},{"id":-400399203,"method":"messages.getGameHighScores","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":258170395,"method":"messages.getInlineGameHighScores","params":[{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":218777796,"method":"messages.getCommonChats","params":[{"name":"user_id","type":"InputUser"},{"name":"max_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Chats"},{"id":-341307408,"method":"messages.getAllChats","params":[{"name":"except_ids","type":"Vector"}],"type":"messages.Chats"},{"id":-333262899,"method":"help.setBotUpdatesStatus","params":[{"name":"pending_updates_count","type":"int"},{"name":"message","type":"string"}],"type":"Bool"},{"id":852135825,"method":"messages.getWebPage","params":[{"name":"url","type":"string"},{"name":"hash","type":"int"}],"type":"WebPage"},{"id":-1489903017,"method":"messages.toggleDialogPin","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":991616823,"method":"messages.reorderPinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"folder_id","type":"int"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":-692498958,"method":"messages.getPinnedDialogs","params":[{"name":"folder_id","type":"int"}],"type":"messages.PeerDialogs"},{"id":-1440257555,"method":"bots.sendCustomRequest","params":[{"name":"custom_method","type":"string"},{"name":"params","type":"DataJSON"}],"type":"DataJSON"},{"id":-434028723,"method":"bots.answerWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"}],"type":"Bool"},{"id":619086221,"method":"upload.getWebFile","params":[{"name":"location","type":"InputWebFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.WebFile"},{"id":-1976353651,"method":"payments.getPaymentForm","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"theme_params","type":"flags.0?DataJSON"}],"type":"payments.PaymentForm"},{"id":611897804,"method":"payments.getPaymentReceipt","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"payments.PaymentReceipt"},{"id":-619695760,"method":"payments.validateRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"info","type":"PaymentRequestedInfo"}],"type":"payments.ValidatedRequestedInfo"},{"id":818134173,"method":"payments.sendPaymentForm","params":[{"name":"flags","type":"#"},{"name":"form_id","type":"long"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"requested_info_id","type":"flags.0?string"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"credentials","type":"InputPaymentCredentials"},{"name":"tip_amount","type":"flags.2?long"}],"type":"payments.PaymentResult"},{"id":1151208273,"method":"account.getTmpPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"period","type":"int"}],"type":"account.TmpPassword"},{"id":578650699,"method":"payments.getSavedInfo","params":[],"type":"payments.SavedInfo"},{"id":-667062079,"method":"payments.clearSavedInfo","params":[{"name":"flags","type":"#"},{"name":"credentials","type":"flags.0?true"},{"name":"info","type":"flags.1?true"}],"type":"Bool"},{"id":-436833542,"method":"messages.setBotShippingResults","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"Bool"},{"id":163765653,"method":"messages.setBotPrecheckoutResults","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"}],"type":"Bool"},{"id":-1876841625,"method":"stickers.createStickerSet","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"animated","type":"flags.1?true"},{"name":"user_id","type":"InputUser"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumb","type":"flags.2?InputDocument"},{"name":"stickers","type":"Vector"},{"name":"software","type":"flags.3?string"}],"type":"messages.StickerSet"},{"id":-143257775,"method":"stickers.removeStickerFromSet","params":[{"name":"sticker","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":-4795190,"method":"stickers.changeStickerPosition","params":[{"name":"sticker","type":"InputDocument"},{"name":"position","type":"int"}],"type":"messages.StickerSet"},{"id":-2041315650,"method":"stickers.addStickerToSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"sticker","type":"InputStickerSetItem"}],"type":"messages.StickerSet"},{"id":1369162417,"method":"messages.uploadMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":1430593449,"method":"phone.getCallConfig","params":[],"type":"DataJSON"},{"id":1124046573,"method":"phone.requestCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":1003664544,"method":"phone.acceptCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":788404002,"method":"phone.confirmCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_a","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":399855457,"method":"phone.receivedCall","params":[{"name":"peer","type":"InputPhoneCall"}],"type":"Bool"},{"id":-1295269440,"method":"phone.discardCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"duration","type":"int"},{"name":"reason","type":"PhoneCallDiscardReason"},{"name":"connection_id","type":"long"}],"type":"Updates"},{"id":1508562471,"method":"phone.setCallRating","params":[{"name":"flags","type":"#"},{"name":"user_initiative","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"rating","type":"int"},{"name":"comment","type":"string"}],"type":"Updates"},{"id":662363518,"method":"phone.saveCallDebug","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"debug","type":"DataJSON"}],"type":"Bool"},{"id":536919235,"method":"upload.getCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.CdnFile"},{"id":-1691921240,"method":"upload.reuploadCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"request_token","type":"bytes"}],"type":"Vector"},{"id":1375900482,"method":"help.getCdnConfig","params":[],"type":"CdnConfig"},{"id":-219008246,"method":"langpack.getLangPack","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackDifference"},{"id":-269862909,"method":"langpack.getStrings","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"keys","type":"Vector"}],"type":"Vector"},{"id":-845657435,"method":"langpack.getDifference","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"LangPackDifference"},{"id":1120311183,"method":"langpack.getLanguages","params":[{"name":"lang_pack","type":"string"}],"type":"Vector"},{"id":-1763259007,"method":"channels.editBanned","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":870184064,"method":"channels.getAdminLog","params":[{"name":"flags","type":"#"},{"name":"channel","type":"InputChannel"},{"name":"q","type":"string"},{"name":"events_filter","type":"flags.0?ChannelAdminLogEventsFilter"},{"name":"admins","type":"flags.1?Vector"},{"name":"max_id","type":"long"},{"name":"min_id","type":"long"},{"name":"limit","type":"int"}],"type":"channels.AdminLogResults"},{"id":1302676017,"method":"upload.getCdnFileHashes","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":-914493408,"method":"messages.sendScreenshotNotification","params":[{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"int"},{"name":"random_id","type":"long"}],"type":"Updates"},{"id":-359881479,"method":"channels.setStickers","params":[{"name":"channel","type":"InputChannel"},{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":567151374,"method":"messages.getFavedStickers","params":[{"name":"hash","type":"int"}],"type":"messages.FavedStickers"},{"id":-1174420133,"method":"messages.faveSticker","params":[{"name":"id","type":"InputDocument"},{"name":"unfave","type":"Bool"}],"type":"Bool"},{"id":-357180360,"method":"channels.readMessageContents","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-2020263951,"method":"contacts.resetSaved","params":[],"type":"Bool"},{"id":1180140658,"method":"messages.getUnreadMentions","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"}],"type":"messages.Messages"},{"id":-1355375294,"method":"channels.deleteHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":1036054804,"method":"help.getRecentMeUrls","params":[{"name":"referer","type":"string"}],"type":"help.RecentMeUrls"},{"id":-356796084,"method":"channels.togglePreHistoryHidden","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":251759059,"method":"messages.readMentions","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":-1144759543,"method":"messages.getRecentLocations","params":[{"name":"peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":-872345397,"method":"messages.sendMultiMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"multi_media","type":"Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":1347929239,"method":"messages.uploadEncryptedFile","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"file","type":"InputEncryptedFile"}],"type":"EncryptedFile"},{"id":405695855,"method":"account.getWebAuthorizations","params":[],"type":"account.WebAuthorizations"},{"id":755087855,"method":"account.resetWebAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1747789204,"method":"account.resetWebAuthorizations","params":[],"type":"Bool"},{"id":-1028140917,"method":"messages.searchStickerSets","params":[{"name":"flags","type":"#"},{"name":"exclude_featured","type":"flags.0?true"},{"name":"q","type":"string"},{"name":"hash","type":"int"}],"type":"messages.FoundStickerSets"},{"id":-956147407,"method":"upload.getFileHashes","params":[{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":749019089,"method":"help.getTermsOfServiceUpdate","params":[],"type":"help.TermsOfServiceUpdate"},{"id":-294455398,"method":"help.acceptTermsOfService","params":[{"name":"id","type":"DataJSON"}],"type":"Bool"},{"id":-1299661699,"method":"account.getAllSecureValues","params":[],"type":"Vector"},{"id":1936088002,"method":"account.getSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Vector"},{"id":-1986010339,"method":"account.saveSecureValue","params":[{"name":"value","type":"InputSecureValue"},{"name":"secure_secret_id","type":"long"}],"type":"SecureValue"},{"id":-1199522741,"method":"account.deleteSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Bool"},{"id":-1865902923,"method":"users.setSecureValueErrors","params":[{"name":"id","type":"InputUser"},{"name":"errors","type":"Vector"}],"type":"Bool"},{"id":-1200903967,"method":"account.getAuthorizationForm","params":[{"name":"bot_id","type":"int"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"}],"type":"account.AuthorizationForm"},{"id":-419267436,"method":"account.acceptAuthorization","params":[{"name":"bot_id","type":"int"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"},{"name":"value_hashes","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"Bool"},{"id":-1516022023,"method":"account.sendVerifyPhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1305716726,"method":"account.verifyPhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1880182943,"method":"account.sendVerifyEmailCode","params":[{"name":"email","type":"string"}],"type":"account.SentEmailCode"},{"id":-323339813,"method":"account.verifyEmail","params":[{"name":"email","type":"string"},{"name":"code","type":"string"}],"type":"Bool"},{"id":1072547679,"method":"help.getDeepLinkInfo","params":[{"name":"path","type":"string"}],"type":"help.DeepLinkInfo"},{"id":-2098076769,"method":"contacts.getSaved","params":[],"type":"Vector"},{"id":-2092831552,"method":"channels.getLeftChannels","params":[{"name":"offset","type":"int"}],"type":"messages.Chats"},{"id":-262453244,"method":"account.initTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"message_users","type":"flags.1?true"},{"name":"message_chats","type":"flags.2?true"},{"name":"message_megagroups","type":"flags.3?true"},{"name":"message_channels","type":"flags.4?true"},{"name":"files","type":"flags.5?true"},{"name":"file_max_size","type":"flags.5?int"}],"type":"account.Takeout"},{"id":489050862,"method":"account.finishTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.0?true"}],"type":"Bool"},{"id":486505992,"method":"messages.getSplitRanges","params":[],"type":"Vector"},{"id":911373810,"method":"invokeWithMessagesRange","params":[{"name":"range","type":"MessageRange"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1398145746,"method":"invokeWithTakeout","params":[{"name":"takeout_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1031349873,"method":"messages.markDialogUnread","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":585256482,"method":"messages.getDialogUnreadMarks","params":[],"type":"Vector"},{"id":-2062238246,"method":"contacts.toggleTopPeers","params":[{"name":"enabled","type":"Bool"}],"type":"Bool"},{"id":2119757468,"method":"messages.clearAllDrafts","params":[],"type":"Bool"},{"id":-1735311088,"method":"help.getAppConfig","params":[],"type":"JSONValue"},{"id":1862465352,"method":"help.saveAppLog","params":[{"name":"events","type":"Vector"}],"type":"Bool"},{"id":-966677240,"method":"help.getPassportConfig","params":[{"name":"hash","type":"int"}],"type":"help.PassportConfig"},{"id":1784243458,"method":"langpack.getLanguage","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackLanguage"},{"id":-760547348,"method":"messages.updatePinnedMessage","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"unpin","type":"flags.1?true"},{"name":"pm_oneside","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"Updates"},{"id":-1881204448,"method":"account.confirmPasswordEmail","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":2055154197,"method":"account.resendPasswordEmail","params":[],"type":"Bool"},{"id":-1043606090,"method":"account.cancelPasswordEmail","params":[],"type":"Bool"},{"id":-748624084,"method":"help.getSupportName","params":[],"type":"help.SupportName"},{"id":59377875,"method":"help.getUserInfo","params":[{"name":"user_id","type":"InputUser"}],"type":"help.UserInfo"},{"id":1723407216,"method":"help.editUserInfo","params":[{"name":"user_id","type":"InputUser"},{"name":"message","type":"string"},{"name":"entities","type":"Vector"}],"type":"help.UserInfo"},{"id":-1626880216,"method":"account.getContactSignUpNotification","params":[],"type":"Bool"},{"id":-806076575,"method":"account.setContactSignUpNotification","params":[{"name":"silent","type":"Bool"}],"type":"Bool"},{"id":1398240377,"method":"account.getNotifyExceptions","params":[{"name":"flags","type":"#"},{"name":"compare_sound","type":"flags.1?true"},{"name":"peer","type":"flags.0?InputNotifyPeer"}],"type":"Updates"},{"id":283795844,"method":"messages.sendVote","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"options","type":"Vector"}],"type":"Updates"},{"id":1941660731,"method":"messages.getPollResults","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1848369232,"method":"messages.getOnlines","params":[{"name":"peer","type":"InputPeer"}],"type":"ChatOnlines"},{"id":-2127811866,"method":"messages.getStatsURL","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"params","type":"string"}],"type":"StatsURL"},{"id":-554301545,"method":"messages.editChatAbout","params":[{"name":"peer","type":"InputPeer"},{"name":"about","type":"string"}],"type":"Bool"},{"id":-1517917375,"method":"messages.editChatDefaultBannedRights","params":[{"name":"peer","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":-57811990,"method":"account.getWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"}],"type":"WallPaper"},{"id":-578472351,"method":"account.uploadWallPaper","params":[{"name":"file","type":"InputFile"},{"name":"mime_type","type":"string"},{"name":"settings","type":"WallPaperSettings"}],"type":"WallPaper"},{"id":1817860919,"method":"account.saveWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"unsave","type":"Bool"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-18000023,"method":"account.installWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-1153722364,"method":"account.resetWallPapers","params":[],"type":"Bool"},{"id":1457130303,"method":"account.getAutoDownloadSettings","params":[],"type":"account.AutoDownloadSettings"},{"id":1995661875,"method":"account.saveAutoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"low","type":"flags.0?true"},{"name":"high","type":"flags.1?true"},{"name":"settings","type":"AutoDownloadSettings"}],"type":"Bool"},{"id":899735650,"method":"messages.getEmojiKeywords","params":[{"name":"lang_code","type":"string"}],"type":"EmojiKeywordsDifference"},{"id":352892591,"method":"messages.getEmojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"EmojiKeywordsDifference"},{"id":1318675378,"method":"messages.getEmojiKeywordsLanguages","params":[{"name":"lang_codes","type":"Vector"}],"type":"Vector"},{"id":-709817306,"method":"messages.getEmojiURL","params":[{"name":"lang_code","type":"string"}],"type":"EmojiURL"},{"id":1749536939,"method":"folders.editPeerFolders","params":[{"name":"folder_peers","type":"Vector"}],"type":"Updates"},{"id":472471681,"method":"folders.deleteFolder","params":[{"name":"folder_id","type":"int"}],"type":"Updates"},{"id":1932455680,"method":"messages.getSearchCounters","params":[{"name":"peer","type":"InputPeer"},{"name":"filters","type":"Vector"}],"type":"Vector"},{"id":-170208392,"method":"channels.getGroupsForDiscussion","params":[],"type":"messages.Chats"},{"id":1079520178,"method":"channels.setDiscussionGroup","params":[{"name":"broadcast","type":"InputChannel"},{"name":"group","type":"InputChannel"}],"type":"Bool"},{"id":428848198,"method":"messages.requestUrlAuth","params":[{"name":"flags","type":"#"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":-1322487515,"method":"messages.acceptUrlAuth","params":[{"name":"flags","type":"#"},{"name":"write_allowed","type":"flags.0?true"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":1336717624,"method":"messages.hidePeerSettingsBar","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-386636848,"method":"contacts.addContact","params":[{"name":"flags","type":"#"},{"name":"add_phone_privacy_exception","type":"flags.0?true"},{"name":"id","type":"InputUser"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"phone","type":"string"}],"type":"Updates"},{"id":-130964977,"method":"contacts.acceptContact","params":[{"name":"id","type":"InputUser"}],"type":"Updates"},{"id":-1892102881,"method":"channels.editCreator","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"password","type":"InputCheckPasswordSRP"}],"type":"Updates"},{"id":-750207932,"method":"contacts.getLocated","params":[{"name":"flags","type":"#"},{"name":"background","type":"flags.1?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"self_expires","type":"flags.0?int"}],"type":"Updates"},{"id":1491484525,"method":"channels.editLocation","params":[{"name":"channel","type":"InputChannel"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"address","type":"string"}],"type":"Bool"},{"id":-304832784,"method":"channels.toggleSlowMode","params":[{"name":"channel","type":"InputChannel"},{"name":"seconds","type":"int"}],"type":"Updates"},{"id":-490575781,"method":"messages.getScheduledHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":-1111817116,"method":"messages.getScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1120369398,"method":"messages.sendScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":1504586518,"method":"messages.deleteScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":473805619,"method":"account.uploadTheme","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.0?InputFile"},{"name":"file_name","type":"string"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":-2077048289,"method":"account.createTheme","params":[{"name":"flags","type":"#"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":1555261397,"method":"account.updateTheme","params":[{"name":"flags","type":"#"},{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"slug","type":"flags.0?string"},{"name":"title","type":"flags.1?string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":-229175188,"method":"account.saveTheme","params":[{"name":"theme","type":"InputTheme"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":2061776695,"method":"account.installTheme","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"format","type":"flags.1?string"},{"name":"theme","type":"flags.1?InputTheme"}],"type":"Bool"},{"id":-1919060949,"method":"account.getTheme","params":[{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"document_id","type":"long"}],"type":"Theme"},{"id":676939512,"method":"account.getThemes","params":[{"name":"format","type":"string"},{"name":"hash","type":"int"}],"type":"account.Themes"},{"id":-1313598185,"method":"auth.exportLoginToken","params":[{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"except_ids","type":"Vector"}],"type":"auth.LoginToken"},{"id":-1783866140,"method":"auth.importLoginToken","params":[{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":-392909491,"method":"auth.acceptLoginToken","params":[{"name":"token","type":"bytes"}],"type":"Authorization"},{"id":-1250643605,"method":"account.setContentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"}],"type":"Bool"},{"id":-1952756306,"method":"account.getContentSettings","params":[],"type":"account.ContentSettings"},{"id":300429806,"method":"channels.getInactiveChannels","params":[],"type":"messages.InactiveChats"},{"id":1705865692,"method":"account.getMultiWallPapers","params":[{"name":"wallpapers","type":"Vector"}],"type":"Vector"},{"id":-1200736242,"method":"messages.getPollVotes","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"option","type":"flags.0?bytes"},{"name":"offset","type":"flags.1?string"},{"name":"limit","type":"int"}],"type":"messages.VotesList"},{"id":-1257951254,"method":"messages.toggleStickerSets","params":[{"name":"flags","type":"#"},{"name":"uninstall","type":"flags.0?true"},{"name":"archive","type":"flags.1?true"},{"name":"unarchive","type":"flags.2?true"},{"name":"stickersets","type":"Vector"}],"type":"Bool"},{"id":779736953,"method":"payments.getBankCardData","params":[{"name":"number","type":"string"}],"type":"payments.BankCardData"},{"id":-241247891,"method":"messages.getDialogFilters","params":[],"type":"Vector"},{"id":-1566780372,"method":"messages.getSuggestedDialogFilters","params":[],"type":"Vector"},{"id":450142282,"method":"messages.updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Bool"},{"id":-983318044,"method":"messages.updateDialogFiltersOrder","params":[{"name":"order","type":"Vector"}],"type":"Bool"},{"id":-1421720550,"method":"stats.getBroadcastStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.BroadcastStats"},{"id":1646092192,"method":"stats.loadAsyncGraph","params":[{"name":"flags","type":"#"},{"name":"token","type":"string"},{"name":"x","type":"flags.0?long"}],"type":"StatsGraph"},{"id":-1707717072,"method":"stickers.setStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":85399130,"method":"bots.setBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"},{"name":"commands","type":"Vector"}],"type":"Bool"},{"id":1608974939,"method":"messages.getOldFeaturedStickers","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"int"}],"type":"messages.FeaturedStickers"},{"id":-1063816159,"method":"help.getPromoData","params":[],"type":"help.PromoData"},{"id":505748629,"method":"help.hidePromoData","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-8744061,"method":"phone.sendSignalingData","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"data","type":"bytes"}],"type":"Bool"},{"id":-589330937,"method":"stats.getMegagroupStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.MegagroupStats"},{"id":-349483786,"method":"account.getGlobalPrivacySettings","params":[],"type":"GlobalPrivacySettings"},{"id":517647042,"method":"account.setGlobalPrivacySettings","params":[{"name":"settings","type":"GlobalPrivacySettings"}],"type":"GlobalPrivacySettings"},{"id":-183649631,"method":"help.dismissSuggestion","params":[{"name":"peer","type":"InputPeer"},{"name":"suggestion","type":"string"}],"type":"Bool"},{"id":1935116200,"method":"help.getCountriesList","params":[{"name":"lang_code","type":"string"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":615875002,"method":"messages.getReplies","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"int"}],"type":"messages.Messages"},{"id":1147761405,"method":"messages.getDiscussionMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"messages.DiscussionMessage"},{"id":-147740172,"method":"messages.readDiscussion","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Bool"},{"id":698914348,"method":"contacts.blockFromReplies","params":[{"name":"flags","type":"#"},{"name":"delete_message","type":"flags.0?true"},{"name":"delete_history","type":"flags.1?true"},{"name":"report_spam","type":"flags.2?true"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1445996571,"method":"stats.getMessagePublicForwards","params":[{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":-1226791947,"method":"stats.getMessageStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"}],"type":"stats.MessageStats"},{"id":-265962357,"method":"messages.unpinAllMessages","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1221445336,"method":"phone.createGroupCall","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"schedule_date","type":"flags.1?int"}],"type":"Updates"},{"id":-1322057861,"method":"phone.joinGroupCall","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"video_stopped","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_as","type":"InputPeer"},{"name":"invite_hash","type":"flags.1?string"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":1342404601,"method":"phone.leaveGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"source","type":"int"}],"type":"Updates"},{"id":2067345760,"method":"phone.inviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":2054648117,"method":"phone.discardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1958458429,"method":"phone.toggleGroupCallSettings","params":[{"name":"flags","type":"#"},{"name":"reset_invite_hash","type":"flags.1?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_muted","type":"flags.0?Bool"}],"type":"Updates"},{"id":68699611,"method":"phone.getGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"limit","type":"int"}],"type":"phone.GroupCall"},{"id":-984033109,"method":"phone.getGroupParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"ids","type":"Vector"},{"name":"sources","type":"Vector"},{"name":"offset","type":"string"},{"name":"limit","type":"int"}],"type":"phone.GroupParticipants"},{"id":-1248003721,"method":"phone.checkGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"sources","type":"Vector"}],"type":"Vector"},{"id":-2094760687,"method":"messages.deleteChat","params":[{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":-104078327,"method":"messages.deletePhoneCallHistory","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"}],"type":"messages.AffectedFoundMessages"},{"id":1140726259,"method":"messages.checkHistoryImport","params":[{"name":"import_head","type":"string"}],"type":"messages.HistoryImportParsed"},{"id":873008187,"method":"messages.initHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"file","type":"InputFile"},{"name":"media_count","type":"int"}],"type":"messages.HistoryImport"},{"id":713433234,"method":"messages.uploadImportedMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"},{"name":"file_name","type":"string"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":-1271008444,"method":"messages.startHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"}],"type":"Bool"},{"id":-1565154314,"method":"messages.getExportedChatInvites","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.3?true"},{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"},{"name":"offset_date","type":"flags.2?int"},{"name":"offset_link","type":"flags.2?string"},{"name":"limit","type":"int"}],"type":"messages.ExportedChatInvites"},{"id":1937010524,"method":"messages.getExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"messages.ExportedChatInvite"},{"id":48562110,"method":"messages.editExportedChatInvite","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"messages.ExportedChatInvite"},{"id":1452833749,"method":"messages.deleteRevokedExportedChatInvites","params":[{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"}],"type":"Bool"},{"id":-731601877,"method":"messages.deleteExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"Bool"},{"id":958457583,"method":"messages.getAdminsWithInvites","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.ChatAdminsWithInvites"},{"id":654013065,"method":"messages.getChatInviteImporters","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"offset_date","type":"int"},{"name":"offset_user","type":"InputUser"},{"name":"limit","type":"int"}],"type":"messages.ChatInviteImporters"},{"id":-1207017500,"method":"messages.setHistoryTTL","params":[{"name":"peer","type":"InputPeer"},{"name":"period","type":"int"}],"type":"Updates"},{"id":-91437323,"method":"account.reportProfilePhoto","params":[{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"InputPhoto"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":187239529,"method":"channels.convertToGigagroup","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":1573261059,"method":"messages.checkHistoryImportPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-1070962985,"method":"phone.toggleGroupCallRecord","params":[{"name":"flags","type":"#"},{"name":"start","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"},{"name":"title","type":"flags.1?string"}],"type":"Updates"},{"id":-1524155713,"method":"phone.editGroupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"participant","type":"InputPeer"},{"name":"muted","type":"flags.0?Bool"},{"name":"volume","type":"flags.1?int"},{"name":"raise_hand","type":"flags.2?Bool"},{"name":"video_stopped","type":"flags.3?Bool"},{"name":"video_paused","type":"flags.4?Bool"},{"name":"presentation_paused","type":"flags.5?Bool"}],"type":"Updates"},{"id":480685066,"method":"phone.editGroupCallTitle","params":[{"name":"call","type":"InputGroupCall"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-277077702,"method":"phone.getGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"}],"type":"phone.JoinAsPeers"},{"id":-425040769,"method":"phone.exportGroupCallInvite","params":[{"name":"flags","type":"#"},{"name":"can_self_unmute","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"}],"type":"phone.ExportedGroupCallInvite"},{"id":563885286,"method":"phone.toggleGroupCallStartSubscription","params":[{"name":"call","type":"InputGroupCall"},{"name":"subscribed","type":"Bool"}],"type":"Updates"},{"id":1451287362,"method":"phone.startScheduledGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1465786252,"method":"phone.saveDefaultGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"},{"name":"join_as","type":"InputPeer"}],"type":"Bool"},{"id":-873829436,"method":"phone.joinGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":475058500,"method":"phone.leaveGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":676017721,"method":"stickers.checkShortName","params":[{"name":"short_name","type":"string"}],"type":"Bool"},{"id":1303364867,"method":"stickers.suggestShortName","params":[{"name":"title","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":1032708345,"method":"bots.resetBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Bool"},{"id":-481554986,"method":"bots.getBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Vector"},{"id":-1828139493,"method":"account.resetPassword","params":[],"type":"account.ResetPasswordResult"},{"id":1284770294,"method":"account.declinePasswordReset","params":[],"type":"Bool"},{"id":221691769,"method":"auth.checkRecoveryPassword","params":[{"name":"code","type":"string"}],"type":"Bool"}]},"layer":131} \ No newline at end of file +{"MTProto":{"constructors":[{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":85337187,"predicate":"resPQ","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"pq","type":"bytes"},{"name":"server_public_key_fingerprints","type":"Vector"}],"type":"ResPQ"},{"id":-1443537003,"predicate":"p_q_inner_data_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"}],"type":"P_Q_inner_data"},{"id":1459478408,"predicate":"p_q_inner_data_temp_dc","params":[{"name":"pq","type":"bytes"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce","type":"int256"},{"name":"dc","type":"int"},{"name":"expires_in","type":"int"}],"type":"P_Q_inner_data"},{"id":-790100132,"predicate":"server_DH_params_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_answer","type":"bytes"}],"type":"Server_DH_Params"},{"id":-1249309254,"predicate":"server_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"g","type":"int"},{"name":"dh_prime","type":"bytes"},{"name":"g_a","type":"bytes"},{"name":"server_time","type":"int"}],"type":"Server_DH_inner_data"},{"id":1715713620,"predicate":"client_DH_inner_data","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"retry_id","type":"long"},{"name":"g_b","type":"bytes"}],"type":"Client_DH_Inner_Data"},{"id":1003222836,"predicate":"dh_gen_ok","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash1","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1188831161,"predicate":"dh_gen_retry","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash2","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":-1499615742,"predicate":"dh_gen_fail","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"new_nonce_hash3","type":"int128"}],"type":"Set_client_DH_params_answer"},{"id":1973679973,"predicate":"bind_auth_key_inner","params":[{"name":"nonce","type":"long"},{"name":"temp_auth_key_id","type":"long"},{"name":"perm_auth_key_id","type":"long"},{"name":"temp_session_id","type":"long"},{"name":"expires_at","type":"int"}],"type":"BindAuthKeyInner"},{"id":-212046591,"predicate":"rpc_result","params":[{"name":"req_msg_id","type":"long"},{"name":"result","type":"Object"}],"type":"RpcResult"},{"id":558156313,"predicate":"rpc_error","params":[{"name":"error_code","type":"int"},{"name":"error_message","type":"string"}],"type":"RpcError"},{"id":1579864942,"predicate":"rpc_answer_unknown","params":[],"type":"RpcDropAnswer"},{"id":-847714938,"predicate":"rpc_answer_dropped_running","params":[],"type":"RpcDropAnswer"},{"id":-1539647305,"predicate":"rpc_answer_dropped","params":[{"name":"msg_id","type":"long"},{"name":"seq_no","type":"int"},{"name":"bytes","type":"int"}],"type":"RpcDropAnswer"},{"id":155834844,"predicate":"future_salt","params":[{"name":"valid_since","type":"int"},{"name":"valid_until","type":"int"},{"name":"salt","type":"long"}],"type":"FutureSalt"},{"id":-1370486635,"predicate":"future_salts","params":[{"name":"req_msg_id","type":"long"},{"name":"now","type":"int"},{"name":"salts","type":"vector"}],"type":"FutureSalts"},{"id":880243653,"predicate":"pong","params":[{"name":"msg_id","type":"long"},{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-501201412,"predicate":"destroy_session_ok","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":1658015945,"predicate":"destroy_session_none","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1631450872,"predicate":"new_session_created","params":[{"name":"first_msg_id","type":"long"},{"name":"unique_id","type":"long"},{"name":"server_salt","type":"long"}],"type":"NewSession"},{"id":1945237724,"predicate":"msg_container","params":[{"name":"messages","type":"vector<%Message>"}],"type":"MessageContainer"},{"id":1538843921,"predicate":"message","params":[{"name":"msg_id","type":"long"},{"name":"seqno","type":"int"},{"name":"bytes","type":"int"},{"name":"body","type":"Object"}],"type":"Message"},{"id":-530561358,"predicate":"msg_copy","params":[{"name":"orig_message","type":"Message"}],"type":"MessageCopy"},{"id":812830625,"predicate":"gzip_packed","params":[{"name":"packed_data","type":"bytes"}],"type":"Object"},{"id":1658238041,"predicate":"msgs_ack","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsAck"},{"id":-1477445615,"predicate":"bad_msg_notification","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"}],"type":"BadMsgNotification"},{"id":-307542917,"predicate":"bad_server_salt","params":[{"name":"bad_msg_id","type":"long"},{"name":"bad_msg_seqno","type":"int"},{"name":"error_code","type":"int"},{"name":"new_server_salt","type":"long"}],"type":"BadMsgNotification"},{"id":2105940488,"predicate":"msg_resend_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgResendReq"},{"id":-630588590,"predicate":"msgs_state_req","params":[{"name":"msg_ids","type":"Vector"}],"type":"MsgsStateReq"},{"id":81704317,"predicate":"msgs_state_info","params":[{"name":"req_msg_id","type":"long"},{"name":"info","type":"bytes"}],"type":"MsgsStateInfo"},{"id":-1933520591,"predicate":"msgs_all_info","params":[{"name":"msg_ids","type":"Vector"},{"name":"info","type":"bytes"}],"type":"MsgsAllInfo"},{"id":661470918,"predicate":"msg_detailed_info","params":[{"name":"msg_id","type":"long"},{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-2137147681,"predicate":"msg_new_detailed_info","params":[{"name":"answer_msg_id","type":"long"},{"name":"bytes","type":"int"},{"name":"status","type":"int"}],"type":"MsgDetailedInfo"},{"id":-161422892,"predicate":"destroy_auth_key_ok","params":[],"type":"DestroyAuthKeyRes"},{"id":178201177,"predicate":"destroy_auth_key_none","params":[],"type":"DestroyAuthKeyRes"},{"id":-368010477,"predicate":"destroy_auth_key_fail","params":[],"type":"DestroyAuthKeyRes"}],"methods":[{"id":-1099002127,"method":"req_pq_multi","params":[{"name":"nonce","type":"int128"}],"type":"ResPQ"},{"id":-686627650,"method":"req_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"p","type":"bytes"},{"name":"q","type":"bytes"},{"name":"public_key_fingerprint","type":"long"},{"name":"encrypted_data","type":"bytes"}],"type":"Server_DH_Params"},{"id":-184262881,"method":"set_client_DH_params","params":[{"name":"nonce","type":"int128"},{"name":"server_nonce","type":"int128"},{"name":"encrypted_data","type":"bytes"}],"type":"Set_client_DH_params_answer"},{"id":1491380032,"method":"rpc_drop_answer","params":[{"name":"req_msg_id","type":"long"}],"type":"RpcDropAnswer"},{"id":-1188971260,"method":"get_future_salts","params":[{"name":"num","type":"int"}],"type":"FutureSalts"},{"id":2059302892,"method":"ping","params":[{"name":"ping_id","type":"long"}],"type":"Pong"},{"id":-213746804,"method":"ping_delay_disconnect","params":[{"name":"ping_id","type":"long"},{"name":"disconnect_delay","type":"int"}],"type":"Pong"},{"id":-414113498,"method":"destroy_session","params":[{"name":"session_id","type":"long"}],"type":"DestroySessionRes"},{"id":-1835453025,"method":"http_wait","params":[{"name":"max_delay","type":"int"},{"name":"wait_after","type":"int"},{"name":"max_wait","type":"int"}],"type":"HttpWait"},{"id":-784117408,"method":"destroy_auth_key","params":[],"type":"DestroyAuthKeyRes"}]},"API":{"constructors":[{"id":-1132882121,"predicate":"boolFalse","params":[],"type":"Bool"},{"id":-1720552011,"predicate":"boolTrue","params":[],"type":"Bool"},{"id":1072550713,"predicate":"true","params":[],"type":"True"},{"id":481674261,"predicate":"vector","params":[],"type":"Vector t"},{"id":-994444869,"predicate":"error","params":[{"name":"code","type":"int"},{"name":"text","type":"string"}],"type":"Error"},{"id":1450380236,"predicate":"null","params":[],"type":"Null"},{"id":2134579434,"predicate":"inputPeerEmpty","params":[],"type":"InputPeer"},{"id":2107670217,"predicate":"inputPeerSelf","params":[],"type":"InputPeer"},{"id":900291769,"predicate":"inputPeerChat","params":[{"name":"chat_id","type":"long"}],"type":"InputPeer"},{"id":-571955892,"predicate":"inputPeerUser","params":[{"name":"user_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":666680316,"predicate":"inputPeerChannel","params":[{"name":"channel_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPeer"},{"id":-1468331492,"predicate":"inputPeerUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"long"}],"type":"InputPeer"},{"id":-1121318848,"predicate":"inputPeerChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"long"}],"type":"InputPeer"},{"id":-1182234929,"predicate":"inputUserEmpty","params":[],"type":"InputUser"},{"id":-138301121,"predicate":"inputUserSelf","params":[],"type":"InputUser"},{"id":-233744186,"predicate":"inputUser","params":[{"name":"user_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputUser"},{"id":497305826,"predicate":"inputUserFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"user_id","type":"long"}],"type":"InputUser"},{"id":-208488460,"predicate":"inputPhoneContact","params":[{"name":"client_id","type":"long"},{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"InputContact"},{"id":-181407105,"predicate":"inputFile","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"},{"name":"md5_checksum","type":"string"}],"type":"InputFile"},{"id":-95482955,"predicate":"inputFileBig","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"name","type":"string"}],"type":"InputFile"},{"id":-1771768449,"predicate":"inputMediaEmpty","params":[],"type":"InputMedia"},{"id":505969924,"predicate":"inputMediaUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":-1279654347,"predicate":"inputMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputPhoto"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-104578748,"predicate":"inputMediaGeoPoint","params":[{"name":"geo_point","type":"InputGeoPoint"}],"type":"InputMedia"},{"id":-122978821,"predicate":"inputMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"}],"type":"InputMedia"},{"id":1530447553,"predicate":"inputMediaUploadedDocument","params":[{"name":"flags","type":"#"},{"name":"nosound_video","type":"flags.3?true"},{"name":"force_file","type":"flags.4?true"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.2?InputFile"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"},{"name":"stickers","type":"flags.0?Vector"},{"name":"ttl_seconds","type":"flags.1?int"}],"type":"InputMedia"},{"id":860303448,"predicate":"inputMediaDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"InputDocument"},{"name":"ttl_seconds","type":"flags.0?int"},{"name":"query","type":"flags.1?string"}],"type":"InputMedia"},{"id":-1052959727,"predicate":"inputMediaVenue","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"InputMedia"},{"id":-440664550,"predicate":"inputMediaPhotoExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-78455655,"predicate":"inputMediaDocumentExternal","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"ttl_seconds","type":"flags.0?int"}],"type":"InputMedia"},{"id":-750828557,"predicate":"inputMediaGame","params":[{"name":"id","type":"InputGame"}],"type":"InputMedia"},{"id":-646342540,"predicate":"inputMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"start_param","type":"flags.1?string"}],"type":"InputMedia"},{"id":-1759532989,"predicate":"inputMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"stopped","type":"flags.0?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.2?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"}],"type":"InputMedia"},{"id":261416433,"predicate":"inputMediaPoll","params":[{"name":"flags","type":"#"},{"name":"poll","type":"Poll"},{"name":"correct_answers","type":"flags.0?Vector"},{"name":"solution","type":"flags.1?string"},{"name":"solution_entities","type":"flags.1?Vector"}],"type":"InputMedia"},{"id":-428884101,"predicate":"inputMediaDice","params":[{"name":"emoticon","type":"string"}],"type":"InputMedia"},{"id":480546647,"predicate":"inputChatPhotoEmpty","params":[],"type":"InputChatPhoto"},{"id":-968723890,"predicate":"inputChatUploadedPhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"InputChatPhoto"},{"id":-1991004873,"predicate":"inputChatPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputChatPhoto"},{"id":-457104426,"predicate":"inputGeoPointEmpty","params":[],"type":"InputGeoPoint"},{"id":1210199983,"predicate":"inputGeoPoint","params":[{"name":"flags","type":"#"},{"name":"lat","type":"double"},{"name":"long","type":"double"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"InputGeoPoint"},{"id":483901197,"predicate":"inputPhotoEmpty","params":[],"type":"InputPhoto"},{"id":1001634122,"predicate":"inputPhoto","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputPhoto"},{"id":-539317279,"predicate":"inputFileLocation","params":[{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputFileLocation"},{"id":-182231723,"predicate":"inputEncryptedFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":-1160743548,"predicate":"inputDocumentFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":-876089816,"predicate":"inputSecureFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputFileLocation"},{"id":700340377,"predicate":"inputTakeoutFileLocation","params":[],"type":"InputFileLocation"},{"id":1075322878,"predicate":"inputPhotoFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"thumb_size","type":"string"}],"type":"InputFileLocation"},{"id":-667654413,"predicate":"inputPhotoLegacyFileLocation","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"volume_id","type":"long"},{"name":"local_id","type":"int"},{"name":"secret","type":"long"}],"type":"InputFileLocation"},{"id":925204121,"predicate":"inputPeerPhotoFileLocation","params":[{"name":"flags","type":"#"},{"name":"big","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"long"}],"type":"InputFileLocation"},{"id":-1652231205,"predicate":"inputStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb_version","type":"int"}],"type":"InputFileLocation"},{"id":93890858,"predicate":"inputGroupCallStream","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"time_ms","type":"long"},{"name":"scale","type":"int"},{"name":"video_channel","type":"flags.0?int"},{"name":"video_quality","type":"flags.0?int"}],"type":"InputFileLocation"},{"id":1498486562,"predicate":"peerUser","params":[{"name":"user_id","type":"long"}],"type":"Peer"},{"id":918946202,"predicate":"peerChat","params":[{"name":"chat_id","type":"long"}],"type":"Peer"},{"id":-1566230754,"predicate":"peerChannel","params":[{"name":"channel_id","type":"long"}],"type":"Peer"},{"id":-1432995067,"predicate":"storage.fileUnknown","params":[],"type":"storage.FileType"},{"id":1086091090,"predicate":"storage.filePartial","params":[],"type":"storage.FileType"},{"id":8322574,"predicate":"storage.fileJpeg","params":[],"type":"storage.FileType"},{"id":-891180321,"predicate":"storage.fileGif","params":[],"type":"storage.FileType"},{"id":172975040,"predicate":"storage.filePng","params":[],"type":"storage.FileType"},{"id":-1373745011,"predicate":"storage.filePdf","params":[],"type":"storage.FileType"},{"id":1384777335,"predicate":"storage.fileMp3","params":[],"type":"storage.FileType"},{"id":1258941372,"predicate":"storage.fileMov","params":[],"type":"storage.FileType"},{"id":-1278304028,"predicate":"storage.fileMp4","params":[],"type":"storage.FileType"},{"id":276907596,"predicate":"storage.fileWebp","params":[],"type":"storage.FileType"},{"id":-742634630,"predicate":"userEmpty","params":[{"name":"id","type":"long"}],"type":"User"},{"id":1073147056,"predicate":"user","params":[{"name":"flags","type":"#"},{"name":"self","type":"flags.10?true"},{"name":"contact","type":"flags.11?true"},{"name":"mutual_contact","type":"flags.12?true"},{"name":"deleted","type":"flags.13?true"},{"name":"bot","type":"flags.14?true"},{"name":"bot_chat_history","type":"flags.15?true"},{"name":"bot_nochats","type":"flags.16?true"},{"name":"verified","type":"flags.17?true"},{"name":"restricted","type":"flags.18?true"},{"name":"min","type":"flags.20?true"},{"name":"bot_inline_geo","type":"flags.21?true"},{"name":"support","type":"flags.23?true"},{"name":"scam","type":"flags.24?true"},{"name":"apply_min_photo","type":"flags.25?true"},{"name":"fake","type":"flags.26?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"flags.0?long"},{"name":"first_name","type":"flags.1?string"},{"name":"last_name","type":"flags.2?string"},{"name":"username","type":"flags.3?string"},{"name":"phone","type":"flags.4?string"},{"name":"photo","type":"flags.5?UserProfilePhoto"},{"name":"status","type":"flags.6?UserStatus"},{"name":"bot_info_version","type":"flags.14?int"},{"name":"restriction_reason","type":"flags.18?Vector"},{"name":"bot_inline_placeholder","type":"flags.19?string"},{"name":"lang_code","type":"flags.22?string"}],"type":"User"},{"id":1326562017,"predicate":"userProfilePhotoEmpty","params":[],"type":"UserProfilePhoto"},{"id":-2100168954,"predicate":"userProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"UserProfilePhoto"},{"id":164646985,"predicate":"userStatusEmpty","params":[],"type":"UserStatus"},{"id":-306628279,"predicate":"userStatusOnline","params":[{"name":"expires","type":"int"}],"type":"UserStatus"},{"id":9203775,"predicate":"userStatusOffline","params":[{"name":"was_online","type":"int"}],"type":"UserStatus"},{"id":-496024847,"predicate":"userStatusRecently","params":[],"type":"UserStatus"},{"id":129960444,"predicate":"userStatusLastWeek","params":[],"type":"UserStatus"},{"id":2011940674,"predicate":"userStatusLastMonth","params":[],"type":"UserStatus"},{"id":693512293,"predicate":"chatEmpty","params":[{"name":"id","type":"long"}],"type":"Chat"},{"id":1103884886,"predicate":"chat","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"kicked","type":"flags.1?true"},{"name":"left","type":"flags.2?true"},{"name":"deactivated","type":"flags.5?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"id","type":"long"},{"name":"title","type":"string"},{"name":"photo","type":"ChatPhoto"},{"name":"participants_count","type":"int"},{"name":"date","type":"int"},{"name":"version","type":"int"},{"name":"migrated_to","type":"flags.6?InputChannel"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"}],"type":"Chat"},{"id":1704108455,"predicate":"chatForbidden","params":[{"name":"id","type":"long"},{"name":"title","type":"string"}],"type":"Chat"},{"id":-2107528095,"predicate":"channel","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"left","type":"flags.2?true"},{"name":"broadcast","type":"flags.5?true"},{"name":"verified","type":"flags.7?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"restricted","type":"flags.9?true"},{"name":"signatures","type":"flags.11?true"},{"name":"min","type":"flags.12?true"},{"name":"scam","type":"flags.19?true"},{"name":"has_link","type":"flags.20?true"},{"name":"has_geo","type":"flags.21?true"},{"name":"slowmode_enabled","type":"flags.22?true"},{"name":"call_active","type":"flags.23?true"},{"name":"call_not_empty","type":"flags.24?true"},{"name":"fake","type":"flags.25?true"},{"name":"gigagroup","type":"flags.26?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"flags.13?long"},{"name":"title","type":"string"},{"name":"username","type":"flags.6?string"},{"name":"photo","type":"ChatPhoto"},{"name":"date","type":"int"},{"name":"restriction_reason","type":"flags.9?Vector"},{"name":"admin_rights","type":"flags.14?ChatAdminRights"},{"name":"banned_rights","type":"flags.15?ChatBannedRights"},{"name":"default_banned_rights","type":"flags.18?ChatBannedRights"},{"name":"participants_count","type":"flags.17?int"}],"type":"Chat"},{"id":399807445,"predicate":"channelForbidden","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.5?true"},{"name":"megagroup","type":"flags.8?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"until_date","type":"flags.16?int"}],"type":"Chat"},{"id":1304281241,"predicate":"chatFull","params":[{"name":"flags","type":"#"},{"name":"can_set_username","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.8?true"},{"name":"id","type":"long"},{"name":"about","type":"string"},{"name":"participants","type":"ChatParticipants"},{"name":"chat_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.13?ExportedChatInvite"},{"name":"bot_info","type":"flags.3?Vector"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"call","type":"flags.12?InputGroupCall"},{"name":"ttl_period","type":"flags.14?int"},{"name":"groupcall_default_join_as","type":"flags.15?Peer"},{"name":"theme_emoticon","type":"flags.16?string"}],"type":"ChatFull"},{"id":-374179305,"predicate":"channelFull","params":[{"name":"flags","type":"#"},{"name":"can_view_participants","type":"flags.3?true"},{"name":"can_set_username","type":"flags.6?true"},{"name":"can_set_stickers","type":"flags.7?true"},{"name":"hidden_prehistory","type":"flags.10?true"},{"name":"can_set_location","type":"flags.16?true"},{"name":"has_scheduled","type":"flags.19?true"},{"name":"can_view_stats","type":"flags.20?true"},{"name":"blocked","type":"flags.22?true"},{"name":"id","type":"long"},{"name":"about","type":"string"},{"name":"participants_count","type":"flags.0?int"},{"name":"admins_count","type":"flags.1?int"},{"name":"kicked_count","type":"flags.2?int"},{"name":"banned_count","type":"flags.2?int"},{"name":"online_count","type":"flags.13?int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"chat_photo","type":"Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"exported_invite","type":"flags.23?ExportedChatInvite"},{"name":"bot_info","type":"Vector"},{"name":"migrated_from_chat_id","type":"flags.4?long"},{"name":"migrated_from_max_id","type":"flags.4?int"},{"name":"pinned_msg_id","type":"flags.5?int"},{"name":"stickerset","type":"flags.8?StickerSet"},{"name":"available_min_id","type":"flags.9?int"},{"name":"folder_id","type":"flags.11?int"},{"name":"linked_chat_id","type":"flags.14?long"},{"name":"location","type":"flags.15?ChannelLocation"},{"name":"slowmode_seconds","type":"flags.17?int"},{"name":"slowmode_next_send_date","type":"flags.18?int"},{"name":"stats_dc","type":"flags.12?int"},{"name":"pts","type":"int"},{"name":"call","type":"flags.21?InputGroupCall"},{"name":"ttl_period","type":"flags.24?int"},{"name":"pending_suggestions","type":"flags.25?Vector"},{"name":"groupcall_default_join_as","type":"flags.26?Peer"},{"name":"theme_emoticon","type":"flags.27?string"}],"type":"ChatFull"},{"id":-1070776313,"predicate":"chatParticipant","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-462696732,"predicate":"chatParticipantCreator","params":[{"name":"user_id","type":"long"}],"type":"ChatParticipant"},{"id":-1600962725,"predicate":"chatParticipantAdmin","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatParticipant"},{"id":-2023500831,"predicate":"chatParticipantsForbidden","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"long"},{"name":"self_participant","type":"flags.0?ChatParticipant"}],"type":"ChatParticipants"},{"id":1018991608,"predicate":"chatParticipants","params":[{"name":"chat_id","type":"long"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"ChatParticipants"},{"id":935395612,"predicate":"chatPhotoEmpty","params":[],"type":"ChatPhoto"},{"id":476978193,"predicate":"chatPhoto","params":[{"name":"flags","type":"#"},{"name":"has_video","type":"flags.0?true"},{"name":"photo_id","type":"long"},{"name":"stripped_thumb","type":"flags.1?bytes"},{"name":"dc_id","type":"int"}],"type":"ChatPhoto"},{"id":-1868117372,"predicate":"messageEmpty","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"peer_id","type":"flags.0?Peer"}],"type":"Message"},{"id":-2049520670,"predicate":"message","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"from_scheduled","type":"flags.18?true"},{"name":"legacy","type":"flags.19?true"},{"name":"edit_hide","type":"flags.21?true"},{"name":"pinned","type":"flags.24?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"message","type":"string"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"reply_markup","type":"flags.6?ReplyMarkup"},{"name":"entities","type":"flags.7?Vector"},{"name":"views","type":"flags.10?int"},{"name":"forwards","type":"flags.10?int"},{"name":"replies","type":"flags.23?MessageReplies"},{"name":"edit_date","type":"flags.15?int"},{"name":"post_author","type":"flags.16?string"},{"name":"grouped_id","type":"flags.17?long"},{"name":"restriction_reason","type":"flags.22?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":721967202,"predicate":"messageService","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"post","type":"flags.14?true"},{"name":"legacy","type":"flags.19?true"},{"name":"id","type":"int"},{"name":"from_id","type":"flags.8?Peer"},{"name":"peer_id","type":"Peer"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"date","type":"int"},{"name":"action","type":"MessageAction"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Message"},{"id":1038967584,"predicate":"messageMediaEmpty","params":[],"type":"MessageMedia"},{"id":1766936791,"predicate":"messageMediaPhoto","params":[{"name":"flags","type":"#"},{"name":"photo","type":"flags.0?Photo"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":1457575028,"predicate":"messageMediaGeo","params":[{"name":"geo","type":"GeoPoint"}],"type":"MessageMedia"},{"id":1882335561,"predicate":"messageMediaContact","params":[{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"user_id","type":"long"}],"type":"MessageMedia"},{"id":-1618676578,"predicate":"messageMediaUnsupported","params":[],"type":"MessageMedia"},{"id":-1666158377,"predicate":"messageMediaDocument","params":[{"name":"flags","type":"#"},{"name":"document","type":"flags.0?Document"},{"name":"ttl_seconds","type":"flags.2?int"}],"type":"MessageMedia"},{"id":-1557277184,"predicate":"messageMediaWebPage","params":[{"name":"webpage","type":"WebPage"}],"type":"MessageMedia"},{"id":784356159,"predicate":"messageMediaVenue","params":[{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"}],"type":"MessageMedia"},{"id":-38694904,"predicate":"messageMediaGame","params":[{"name":"game","type":"Game"}],"type":"MessageMedia"},{"id":-2074799289,"predicate":"messageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"receipt_msg_id","type":"flags.2?int"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"start_param","type":"string"}],"type":"MessageMedia"},{"id":-1186937242,"predicate":"messageMediaGeoLive","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"int"},{"name":"proximity_notification_radius","type":"flags.1?int"}],"type":"MessageMedia"},{"id":1272375192,"predicate":"messageMediaPoll","params":[{"name":"poll","type":"Poll"},{"name":"results","type":"PollResults"}],"type":"MessageMedia"},{"id":1065280907,"predicate":"messageMediaDice","params":[{"name":"value","type":"int"},{"name":"emoticon","type":"string"}],"type":"MessageMedia"},{"id":-1230047312,"predicate":"messageActionEmpty","params":[],"type":"MessageAction"},{"id":-1119368275,"predicate":"messageActionChatCreate","params":[{"name":"title","type":"string"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1247687078,"predicate":"messageActionChatEditTitle","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":2144015272,"predicate":"messageActionChatEditPhoto","params":[{"name":"photo","type":"Photo"}],"type":"MessageAction"},{"id":-1780220945,"predicate":"messageActionChatDeletePhoto","params":[],"type":"MessageAction"},{"id":365886720,"predicate":"messageActionChatAddUser","params":[{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1539362612,"predicate":"messageActionChatDeleteUser","params":[{"name":"user_id","type":"long"}],"type":"MessageAction"},{"id":51520707,"predicate":"messageActionChatJoinedByLink","params":[{"name":"inviter_id","type":"long"}],"type":"MessageAction"},{"id":-1781355374,"predicate":"messageActionChannelCreate","params":[{"name":"title","type":"string"}],"type":"MessageAction"},{"id":-519864430,"predicate":"messageActionChatMigrateTo","params":[{"name":"channel_id","type":"long"}],"type":"MessageAction"},{"id":-365344535,"predicate":"messageActionChannelMigrateFrom","params":[{"name":"title","type":"string"},{"name":"chat_id","type":"long"}],"type":"MessageAction"},{"id":-1799538451,"predicate":"messageActionPinMessage","params":[],"type":"MessageAction"},{"id":-1615153660,"predicate":"messageActionHistoryClear","params":[],"type":"MessageAction"},{"id":-1834538890,"predicate":"messageActionGameScore","params":[{"name":"game_id","type":"long"},{"name":"score","type":"int"}],"type":"MessageAction"},{"id":-1892568281,"predicate":"messageActionPaymentSentMe","params":[{"name":"flags","type":"#"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"charge","type":"PaymentCharge"}],"type":"MessageAction"},{"id":1080663248,"predicate":"messageActionPaymentSent","params":[{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"MessageAction"},{"id":-2132731265,"predicate":"messageActionPhoneCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.2?true"},{"name":"call_id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"MessageAction"},{"id":1200788123,"predicate":"messageActionScreenshotTaken","params":[],"type":"MessageAction"},{"id":-85549226,"predicate":"messageActionCustomAction","params":[{"name":"message","type":"string"}],"type":"MessageAction"},{"id":-1410748418,"predicate":"messageActionBotAllowed","params":[{"name":"domain","type":"string"}],"type":"MessageAction"},{"id":455635795,"predicate":"messageActionSecureValuesSentMe","params":[{"name":"values","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"MessageAction"},{"id":-648257196,"predicate":"messageActionSecureValuesSent","params":[{"name":"types","type":"Vector"}],"type":"MessageAction"},{"id":-202219658,"predicate":"messageActionContactSignUp","params":[],"type":"MessageAction"},{"id":-1730095465,"predicate":"messageActionGeoProximityReached","params":[{"name":"from_id","type":"Peer"},{"name":"to_id","type":"Peer"},{"name":"distance","type":"int"}],"type":"MessageAction"},{"id":2047704898,"predicate":"messageActionGroupCall","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"duration","type":"flags.0?int"}],"type":"MessageAction"},{"id":1345295095,"predicate":"messageActionInviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"MessageAction"},{"id":-1441072131,"predicate":"messageActionSetMessagesTTL","params":[{"name":"period","type":"int"}],"type":"MessageAction"},{"id":-1281329567,"predicate":"messageActionGroupCallScheduled","params":[{"name":"call","type":"InputGroupCall"},{"name":"schedule_date","type":"int"}],"type":"MessageAction"},{"id":-1434950843,"predicate":"messageActionSetChatTheme","params":[{"name":"emoticon","type":"string"}],"type":"MessageAction"},{"id":739712882,"predicate":"dialog","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"unread_mark","type":"flags.3?true"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"read_inbox_max_id","type":"int"},{"name":"read_outbox_max_id","type":"int"},{"name":"unread_count","type":"int"},{"name":"unread_mentions_count","type":"int"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"pts","type":"flags.0?int"},{"name":"draft","type":"flags.1?DraftMessage"},{"name":"folder_id","type":"flags.4?int"}],"type":"Dialog"},{"id":1908216652,"predicate":"dialogFolder","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.2?true"},{"name":"folder","type":"Folder"},{"name":"peer","type":"Peer"},{"name":"top_message","type":"int"},{"name":"unread_muted_peers_count","type":"int"},{"name":"unread_unmuted_peers_count","type":"int"},{"name":"unread_muted_messages_count","type":"int"},{"name":"unread_unmuted_messages_count","type":"int"}],"type":"Dialog"},{"id":590459437,"predicate":"photoEmpty","params":[{"name":"id","type":"long"}],"type":"Photo"},{"id":-82216347,"predicate":"photo","params":[{"name":"flags","type":"#"},{"name":"has_stickers","type":"flags.0?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"sizes","type":"Vector"},{"name":"video_sizes","type":"flags.1?Vector"},{"name":"dc_id","type":"int"}],"type":"Photo"},{"id":236446268,"predicate":"photoSizeEmpty","params":[{"name":"type","type":"string"}],"type":"PhotoSize"},{"id":1976012384,"predicate":"photoSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"}],"type":"PhotoSize"},{"id":35527382,"predicate":"photoCachedSize","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":-525288402,"predicate":"photoStrippedSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":-96535659,"predicate":"photoSizeProgressive","params":[{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"sizes","type":"Vector"}],"type":"PhotoSize"},{"id":-668906175,"predicate":"photoPathSize","params":[{"name":"type","type":"string"},{"name":"bytes","type":"bytes"}],"type":"PhotoSize"},{"id":286776671,"predicate":"geoPointEmpty","params":[],"type":"GeoPoint"},{"id":-1297942941,"predicate":"geoPoint","params":[{"name":"flags","type":"#"},{"name":"long","type":"double"},{"name":"lat","type":"double"},{"name":"access_hash","type":"long"},{"name":"accuracy_radius","type":"flags.0?int"}],"type":"GeoPoint"},{"id":1577067778,"predicate":"auth.sentCode","params":[{"name":"flags","type":"#"},{"name":"type","type":"auth.SentCodeType"},{"name":"phone_code_hash","type":"string"},{"name":"next_type","type":"flags.1?auth.CodeType"},{"name":"timeout","type":"flags.2?int"}],"type":"auth.SentCode"},{"id":-855308010,"predicate":"auth.authorization","params":[{"name":"flags","type":"#"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"user","type":"User"}],"type":"auth.Authorization"},{"id":1148485274,"predicate":"auth.authorizationSignUpRequired","params":[{"name":"flags","type":"#"},{"name":"terms_of_service","type":"flags.0?help.TermsOfService"}],"type":"auth.Authorization"},{"id":-1271602504,"predicate":"auth.exportedAuthorization","params":[{"name":"id","type":"long"},{"name":"bytes","type":"bytes"}],"type":"auth.ExportedAuthorization"},{"id":-1195615476,"predicate":"inputNotifyPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputNotifyPeer"},{"id":423314455,"predicate":"inputNotifyUsers","params":[],"type":"InputNotifyPeer"},{"id":1251338318,"predicate":"inputNotifyChats","params":[],"type":"InputNotifyPeer"},{"id":-1311015810,"predicate":"inputNotifyBroadcasts","params":[],"type":"InputNotifyPeer"},{"id":-1673717362,"predicate":"inputPeerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"InputPeerNotifySettings"},{"id":-1353671392,"predicate":"peerNotifySettings","params":[{"name":"flags","type":"#"},{"name":"show_previews","type":"flags.0?Bool"},{"name":"silent","type":"flags.1?Bool"},{"name":"mute_until","type":"flags.2?int"},{"name":"sound","type":"flags.3?string"}],"type":"PeerNotifySettings"},{"id":1933519201,"predicate":"peerSettings","params":[{"name":"flags","type":"#"},{"name":"report_spam","type":"flags.0?true"},{"name":"add_contact","type":"flags.1?true"},{"name":"block_contact","type":"flags.2?true"},{"name":"share_contact","type":"flags.3?true"},{"name":"need_contacts_exception","type":"flags.4?true"},{"name":"report_geo","type":"flags.5?true"},{"name":"autoarchived","type":"flags.7?true"},{"name":"invite_members","type":"flags.8?true"},{"name":"geo_distance","type":"flags.6?int"}],"type":"PeerSettings"},{"id":-1539849235,"predicate":"wallPaper","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"pattern","type":"flags.3?true"},{"name":"dark","type":"flags.4?true"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"document","type":"Document"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":-528465642,"predicate":"wallPaperNoFile","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"default","type":"flags.1?true"},{"name":"dark","type":"flags.4?true"},{"name":"settings","type":"flags.2?WallPaperSettings"}],"type":"WallPaper"},{"id":1490799288,"predicate":"inputReportReasonSpam","params":[],"type":"ReportReason"},{"id":505595789,"predicate":"inputReportReasonViolence","params":[],"type":"ReportReason"},{"id":777640226,"predicate":"inputReportReasonPornography","params":[],"type":"ReportReason"},{"id":-1376497949,"predicate":"inputReportReasonChildAbuse","params":[],"type":"ReportReason"},{"id":-1041980751,"predicate":"inputReportReasonOther","params":[],"type":"ReportReason"},{"id":-1685456582,"predicate":"inputReportReasonCopyright","params":[],"type":"ReportReason"},{"id":-606798099,"predicate":"inputReportReasonGeoIrrelevant","params":[],"type":"ReportReason"},{"id":-170010905,"predicate":"inputReportReasonFake","params":[],"type":"ReportReason"},{"id":-694681851,"predicate":"userFull","params":[{"name":"flags","type":"#"},{"name":"blocked","type":"flags.0?true"},{"name":"phone_calls_available","type":"flags.4?true"},{"name":"phone_calls_private","type":"flags.5?true"},{"name":"can_pin_message","type":"flags.7?true"},{"name":"has_scheduled","type":"flags.12?true"},{"name":"video_calls_available","type":"flags.13?true"},{"name":"user","type":"User"},{"name":"about","type":"flags.1?string"},{"name":"settings","type":"PeerSettings"},{"name":"profile_photo","type":"flags.2?Photo"},{"name":"notify_settings","type":"PeerNotifySettings"},{"name":"bot_info","type":"flags.3?BotInfo"},{"name":"pinned_msg_id","type":"flags.6?int"},{"name":"common_chats_count","type":"int"},{"name":"folder_id","type":"flags.11?int"},{"name":"ttl_period","type":"flags.14?int"},{"name":"theme_emoticon","type":"flags.15?string"}],"type":"UserFull"},{"id":341499403,"predicate":"contact","params":[{"name":"user_id","type":"long"},{"name":"mutual","type":"Bool"}],"type":"Contact"},{"id":-1052885936,"predicate":"importedContact","params":[{"name":"user_id","type":"long"},{"name":"client_id","type":"long"}],"type":"ImportedContact"},{"id":383348795,"predicate":"contactStatus","params":[{"name":"user_id","type":"long"},{"name":"status","type":"UserStatus"}],"type":"ContactStatus"},{"id":-1219778094,"predicate":"contacts.contactsNotModified","params":[],"type":"contacts.Contacts"},{"id":-353862078,"predicate":"contacts.contacts","params":[{"name":"contacts","type":"Vector"},{"name":"saved_count","type":"int"},{"name":"users","type":"Vector"}],"type":"contacts.Contacts"},{"id":2010127419,"predicate":"contacts.importedContacts","params":[{"name":"imported","type":"Vector"},{"name":"popular_invites","type":"Vector"},{"name":"retry_contacts","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":182326673,"predicate":"contacts.blocked","params":[{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":-513392236,"predicate":"contacts.blockedSlice","params":[{"name":"count","type":"int"},{"name":"blocked","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Blocked"},{"id":364538944,"predicate":"messages.dialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":1910543603,"predicate":"messages.dialogsSlice","params":[{"name":"count","type":"int"},{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Dialogs"},{"id":-253500010,"predicate":"messages.dialogsNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Dialogs"},{"id":-1938715001,"predicate":"messages.messages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":978610270,"predicate":"messages.messagesSlice","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"count","type":"int"},{"name":"next_rate","type":"flags.0?int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1682413576,"predicate":"messages.channelMessages","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"pts","type":"int"},{"name":"count","type":"int"},{"name":"offset_id_offset","type":"flags.2?int"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.Messages"},{"id":1951620897,"predicate":"messages.messagesNotModified","params":[{"name":"count","type":"int"}],"type":"messages.Messages"},{"id":1694474197,"predicate":"messages.chats","params":[{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-1663561404,"predicate":"messages.chatsSlice","params":[{"name":"count","type":"int"},{"name":"chats","type":"Vector"}],"type":"messages.Chats"},{"id":-438840932,"predicate":"messages.chatFull","params":[{"name":"full_chat","type":"ChatFull"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatFull"},{"id":-1269012015,"predicate":"messages.affectedHistory","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"}],"type":"messages.AffectedHistory"},{"id":1474492012,"predicate":"inputMessagesFilterEmpty","params":[],"type":"MessagesFilter"},{"id":-1777752804,"predicate":"inputMessagesFilterPhotos","params":[],"type":"MessagesFilter"},{"id":-1614803355,"predicate":"inputMessagesFilterVideo","params":[],"type":"MessagesFilter"},{"id":1458172132,"predicate":"inputMessagesFilterPhotoVideo","params":[],"type":"MessagesFilter"},{"id":-1629621880,"predicate":"inputMessagesFilterDocument","params":[],"type":"MessagesFilter"},{"id":2129714567,"predicate":"inputMessagesFilterUrl","params":[],"type":"MessagesFilter"},{"id":-3644025,"predicate":"inputMessagesFilterGif","params":[],"type":"MessagesFilter"},{"id":1358283666,"predicate":"inputMessagesFilterVoice","params":[],"type":"MessagesFilter"},{"id":928101534,"predicate":"inputMessagesFilterMusic","params":[],"type":"MessagesFilter"},{"id":975236280,"predicate":"inputMessagesFilterChatPhotos","params":[],"type":"MessagesFilter"},{"id":-2134272152,"predicate":"inputMessagesFilterPhoneCalls","params":[{"name":"flags","type":"#"},{"name":"missed","type":"flags.0?true"}],"type":"MessagesFilter"},{"id":2054952868,"predicate":"inputMessagesFilterRoundVoice","params":[],"type":"MessagesFilter"},{"id":-1253451181,"predicate":"inputMessagesFilterRoundVideo","params":[],"type":"MessagesFilter"},{"id":-1040652646,"predicate":"inputMessagesFilterMyMentions","params":[],"type":"MessagesFilter"},{"id":-419271411,"predicate":"inputMessagesFilterGeo","params":[],"type":"MessagesFilter"},{"id":-530392189,"predicate":"inputMessagesFilterContacts","params":[],"type":"MessagesFilter"},{"id":464520273,"predicate":"inputMessagesFilterPinned","params":[],"type":"MessagesFilter"},{"id":522914557,"predicate":"updateNewMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1318109142,"predicate":"updateMessageID","params":[{"name":"id","type":"int"},{"name":"random_id","type":"long"}],"type":"Update"},{"id":-1576161051,"predicate":"updateDeleteMessages","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1071741569,"predicate":"updateUserTyping","params":[{"name":"user_id","type":"long"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-2092401936,"predicate":"updateChatUserTyping","params":[{"name":"chat_id","type":"long"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":125178264,"predicate":"updateChatParticipants","params":[{"name":"participants","type":"ChatParticipants"}],"type":"Update"},{"id":-440534818,"predicate":"updateUserStatus","params":[{"name":"user_id","type":"long"},{"name":"status","type":"UserStatus"}],"type":"Update"},{"id":-1007549728,"predicate":"updateUserName","params":[{"name":"user_id","type":"long"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"username","type":"string"}],"type":"Update"},{"id":-232290676,"predicate":"updateUserPhoto","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"},{"name":"photo","type":"UserProfilePhoto"},{"name":"previous","type":"Bool"}],"type":"Update"},{"id":314359194,"predicate":"updateNewEncryptedMessage","params":[{"name":"message","type":"EncryptedMessage"},{"name":"qts","type":"int"}],"type":"Update"},{"id":386986326,"predicate":"updateEncryptedChatTyping","params":[{"name":"chat_id","type":"int"}],"type":"Update"},{"id":-1264392051,"predicate":"updateEncryption","params":[{"name":"chat","type":"EncryptedChat"},{"name":"date","type":"int"}],"type":"Update"},{"id":956179895,"predicate":"updateEncryptedMessagesRead","params":[{"name":"chat_id","type":"int"},{"name":"max_date","type":"int"},{"name":"date","type":"int"}],"type":"Update"},{"id":1037718609,"predicate":"updateChatParticipantAdd","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"},{"name":"version","type":"int"}],"type":"Update"},{"id":-483443337,"predicate":"updateChatParticipantDelete","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"version","type":"int"}],"type":"Update"},{"id":-1906403213,"predicate":"updateDcOptions","params":[{"name":"dc_options","type":"Vector"}],"type":"Update"},{"id":-1094555409,"predicate":"updateNotifySettings","params":[{"name":"peer","type":"NotifyPeer"},{"name":"notify_settings","type":"PeerNotifySettings"}],"type":"Update"},{"id":-337352679,"predicate":"updateServiceNotification","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"inbox_date","type":"flags.1?int"},{"name":"type","type":"string"},{"name":"message","type":"string"},{"name":"media","type":"MessageMedia"},{"name":"entities","type":"Vector"}],"type":"Update"},{"id":-298113238,"predicate":"updatePrivacy","params":[{"name":"key","type":"PrivacyKey"},{"name":"rules","type":"Vector"}],"type":"Update"},{"id":88680979,"predicate":"updateUserPhone","params":[{"name":"user_id","type":"long"},{"name":"phone","type":"string"}],"type":"Update"},{"id":-1667805217,"predicate":"updateReadHistoryInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":791617983,"predicate":"updateReadHistoryOutbox","params":[{"name":"peer","type":"Peer"},{"name":"max_id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":2139689491,"predicate":"updateWebPage","params":[{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1757493555,"predicate":"updateReadMessagesContents","params":[{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":277713951,"predicate":"updateChannelTooLong","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"pts","type":"flags.0?int"}],"type":"Update"},{"id":1666927625,"predicate":"updateChannel","params":[{"name":"channel_id","type":"long"}],"type":"Update"},{"id":1656358105,"predicate":"updateNewChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1842450928,"predicate":"updateReadChannelInbox","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"channel_id","type":"long"},{"name":"max_id","type":"int"},{"name":"still_unread_count","type":"int"},{"name":"pts","type":"int"}],"type":"Update"},{"id":-1020437742,"predicate":"updateDeleteChannelMessages","params":[{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-232346616,"predicate":"updateChannelMessageViews","params":[{"name":"channel_id","type":"long"},{"name":"id","type":"int"},{"name":"views","type":"int"}],"type":"Update"},{"id":-674602590,"predicate":"updateChatParticipantAdmin","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"long"},{"name":"is_admin","type":"Bool"},{"name":"version","type":"int"}],"type":"Update"},{"id":1753886890,"predicate":"updateNewStickerSet","params":[{"name":"stickerset","type":"messages.StickerSet"}],"type":"Update"},{"id":196268545,"predicate":"updateStickerSetsOrder","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Update"},{"id":1135492588,"predicate":"updateStickerSets","params":[],"type":"Update"},{"id":-1821035490,"predicate":"updateSavedGifs","params":[],"type":"Update"},{"id":1232025500,"predicate":"updateBotInlineQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"peer_type","type":"flags.1?InlineQueryPeerType"},{"name":"offset","type":"string"}],"type":"Update"},{"id":317794823,"predicate":"updateBotInlineSend","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"long"},{"name":"query","type":"string"},{"name":"geo","type":"flags.0?GeoPoint"},{"name":"id","type":"string"},{"name":"msg_id","type":"flags.1?InputBotInlineMessageID"}],"type":"Update"},{"id":457133559,"predicate":"updateEditChannelMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-1177566067,"predicate":"updateBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":-469536605,"predicate":"updateEditMessage","params":[{"name":"message","type":"Message"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1763610706,"predicate":"updateInlineBotCallbackQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"msg_id","type":"InputBotInlineMessageID"},{"name":"chat_instance","type":"long"},{"name":"data","type":"flags.0?bytes"},{"name":"game_short_name","type":"flags.1?string"}],"type":"Update"},{"id":-1218471511,"predicate":"updateReadChannelOutbox","params":[{"name":"channel_id","type":"long"},{"name":"max_id","type":"int"}],"type":"Update"},{"id":-299124375,"predicate":"updateDraftMessage","params":[{"name":"peer","type":"Peer"},{"name":"draft","type":"DraftMessage"}],"type":"Update"},{"id":1461528386,"predicate":"updateReadFeaturedStickers","params":[],"type":"Update"},{"id":-1706939360,"predicate":"updateRecentStickers","params":[],"type":"Update"},{"id":-1574314746,"predicate":"updateConfig","params":[],"type":"Update"},{"id":861169551,"predicate":"updatePtsChanged","params":[],"type":"Update"},{"id":791390623,"predicate":"updateChannelWebPage","params":[{"name":"channel_id","type":"long"},{"name":"webpage","type":"WebPage"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1852826908,"predicate":"updateDialogPinned","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-99664734,"predicate":"updatePinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.1?int"},{"name":"order","type":"flags.0?Vector"}],"type":"Update"},{"id":-2095595325,"predicate":"updateBotWebhookJSON","params":[{"name":"data","type":"DataJSON"}],"type":"Update"},{"id":-1684914010,"predicate":"updateBotWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"},{"name":"timeout","type":"int"}],"type":"Update"},{"id":-1246823043,"predicate":"updateBotShippingQuery","params":[{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"payload","type":"bytes"},{"name":"shipping_address","type":"PostAddress"}],"type":"Update"},{"id":-1934976362,"predicate":"updateBotPrecheckoutQuery","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"user_id","type":"long"},{"name":"payload","type":"bytes"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"}],"type":"Update"},{"id":-1425052898,"predicate":"updatePhoneCall","params":[{"name":"phone_call","type":"PhoneCall"}],"type":"Update"},{"id":1180041828,"predicate":"updateLangPackTooLong","params":[{"name":"lang_code","type":"string"}],"type":"Update"},{"id":1442983757,"predicate":"updateLangPack","params":[{"name":"difference","type":"LangPackDifference"}],"type":"Update"},{"id":-451831443,"predicate":"updateFavedStickers","params":[],"type":"Update"},{"id":1153291573,"predicate":"updateChannelReadMessagesContents","params":[{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":1887741886,"predicate":"updateContactsReset","params":[],"type":"Update"},{"id":-1304443240,"predicate":"updateChannelAvailableMessages","params":[{"name":"channel_id","type":"long"},{"name":"available_min_id","type":"int"}],"type":"Update"},{"id":-513517117,"predicate":"updateDialogUnreadMark","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"DialogPeer"}],"type":"Update"},{"id":-1398708869,"predicate":"updateMessagePoll","params":[{"name":"flags","type":"#"},{"name":"poll_id","type":"long"},{"name":"poll","type":"flags.0?Poll"},{"name":"results","type":"PollResults"}],"type":"Update"},{"id":1421875280,"predicate":"updateChatDefaultBannedRights","params":[{"name":"peer","type":"Peer"},{"name":"default_banned_rights","type":"ChatBannedRights"},{"name":"version","type":"int"}],"type":"Update"},{"id":422972864,"predicate":"updateFolderPeers","params":[{"name":"folder_peers","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1786671974,"predicate":"updatePeerSettings","params":[{"name":"peer","type":"Peer"},{"name":"settings","type":"PeerSettings"}],"type":"Update"},{"id":-1263546448,"predicate":"updatePeerLocated","params":[{"name":"peers","type":"Vector"}],"type":"Update"},{"id":967122427,"predicate":"updateNewScheduledMessage","params":[{"name":"message","type":"Message"}],"type":"Update"},{"id":-1870238482,"predicate":"updateDeleteScheduledMessages","params":[{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"}],"type":"Update"},{"id":-2112423005,"predicate":"updateTheme","params":[{"name":"theme","type":"Theme"}],"type":"Update"},{"id":-2027964103,"predicate":"updateGeoLiveViewed","params":[{"name":"peer","type":"Peer"},{"name":"msg_id","type":"int"}],"type":"Update"},{"id":1448076945,"predicate":"updateLoginToken","params":[],"type":"Update"},{"id":274961865,"predicate":"updateMessagePollVote","params":[{"name":"poll_id","type":"long"},{"name":"user_id","type":"long"},{"name":"options","type":"Vector"},{"name":"qts","type":"int"}],"type":"Update"},{"id":654302845,"predicate":"updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Update"},{"id":-1512627963,"predicate":"updateDialogFilterOrder","params":[{"name":"order","type":"Vector"}],"type":"Update"},{"id":889491791,"predicate":"updateDialogFilters","params":[],"type":"Update"},{"id":643940105,"predicate":"updatePhoneCallSignalingData","params":[{"name":"phone_call_id","type":"long"},{"name":"data","type":"bytes"}],"type":"Update"},{"id":-761649164,"predicate":"updateChannelMessageForwards","params":[{"name":"channel_id","type":"long"},{"name":"id","type":"int"},{"name":"forwards","type":"int"}],"type":"Update"},{"id":-693004986,"predicate":"updateReadChannelDiscussionInbox","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"},{"name":"broadcast_id","type":"flags.0?long"},{"name":"broadcast_post","type":"flags.0?int"}],"type":"Update"},{"id":1767677564,"predicate":"updateReadChannelDiscussionOutbox","params":[{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Update"},{"id":610945826,"predicate":"updatePeerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"blocked","type":"Bool"}],"type":"Update"},{"id":-1937192669,"predicate":"updateChannelUserTyping","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"from_id","type":"Peer"},{"name":"action","type":"SendMessageAction"}],"type":"Update"},{"id":-309990731,"predicate":"updatePinnedMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":1538885128,"predicate":"updatePinnedChannelMessages","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"channel_id","type":"long"},{"name":"messages","type":"Vector"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"Update"},{"id":-124097970,"predicate":"updateChat","params":[{"name":"chat_id","type":"long"}],"type":"Update"},{"id":-219423922,"predicate":"updateGroupCallParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"participants","type":"Vector"},{"name":"version","type":"int"}],"type":"Update"},{"id":347227392,"predicate":"updateGroupCall","params":[{"name":"chat_id","type":"long"},{"name":"call","type":"GroupCall"}],"type":"Update"},{"id":-1147422299,"predicate":"updatePeerHistoryTTL","params":[{"name":"flags","type":"#"},{"name":"peer","type":"Peer"},{"name":"ttl_period","type":"flags.0?int"}],"type":"Update"},{"id":-796432838,"predicate":"updateChatParticipant","params":[{"name":"flags","type":"#"},{"name":"chat_id","type":"long"},{"name":"date","type":"int"},{"name":"actor_id","type":"long"},{"name":"user_id","type":"long"},{"name":"prev_participant","type":"flags.0?ChatParticipant"},{"name":"new_participant","type":"flags.1?ChatParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":-1738720581,"predicate":"updateChannelParticipant","params":[{"name":"flags","type":"#"},{"name":"channel_id","type":"long"},{"name":"date","type":"int"},{"name":"actor_id","type":"long"},{"name":"user_id","type":"long"},{"name":"prev_participant","type":"flags.0?ChannelParticipant"},{"name":"new_participant","type":"flags.1?ChannelParticipant"},{"name":"invite","type":"flags.2?ExportedChatInvite"},{"name":"qts","type":"int"}],"type":"Update"},{"id":-997782967,"predicate":"updateBotStopped","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"},{"name":"stopped","type":"Bool"},{"name":"qts","type":"int"}],"type":"Update"},{"id":192428418,"predicate":"updateGroupCallConnection","params":[{"name":"flags","type":"#"},{"name":"presentation","type":"flags.0?true"},{"name":"params","type":"DataJSON"}],"type":"Update"},{"id":1299263278,"predicate":"updateBotCommands","params":[{"name":"peer","type":"Peer"},{"name":"bot_id","type":"long"},{"name":"commands","type":"Vector"}],"type":"Update"},{"id":-1519637954,"predicate":"updates.state","params":[{"name":"pts","type":"int"},{"name":"qts","type":"int"},{"name":"date","type":"int"},{"name":"seq","type":"int"},{"name":"unread_count","type":"int"}],"type":"updates.State"},{"id":1567990072,"predicate":"updates.differenceEmpty","params":[{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"updates.Difference"},{"id":16030880,"predicate":"updates.difference","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"updates.Difference"},{"id":-1459938943,"predicate":"updates.differenceSlice","params":[{"name":"new_messages","type":"Vector"},{"name":"new_encrypted_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"intermediate_state","type":"updates.State"}],"type":"updates.Difference"},{"id":1258196845,"predicate":"updates.differenceTooLong","params":[{"name":"pts","type":"int"}],"type":"updates.Difference"},{"id":-484987010,"predicate":"updatesTooLong","params":[],"type":"Updates"},{"id":826001400,"predicate":"updateShortMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"user_id","type":"long"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":1299050149,"predicate":"updateShortChatMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"mentioned","type":"flags.4?true"},{"name":"media_unread","type":"flags.5?true"},{"name":"silent","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"from_id","type":"long"},{"name":"chat_id","type":"long"},{"name":"message","type":"string"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"fwd_from","type":"flags.2?MessageFwdHeader"},{"name":"via_bot_id","type":"flags.11?long"},{"name":"reply_to","type":"flags.3?MessageReplyHeader"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":2027216577,"predicate":"updateShort","params":[{"name":"update","type":"Update"},{"name":"date","type":"int"}],"type":"Updates"},{"id":1918567619,"predicate":"updatesCombined","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq_start","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":1957577280,"predicate":"updates","params":[{"name":"updates","type":"Vector"},{"name":"users","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"date","type":"int"},{"name":"seq","type":"int"}],"type":"Updates"},{"id":-1877614335,"predicate":"updateShortSentMessage","params":[{"name":"flags","type":"#"},{"name":"out","type":"flags.1?true"},{"name":"id","type":"int"},{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"date","type":"int"},{"name":"media","type":"flags.9?MessageMedia"},{"name":"entities","type":"flags.7?Vector"},{"name":"ttl_period","type":"flags.25?int"}],"type":"Updates"},{"id":-1916114267,"predicate":"photos.photos","params":[{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":352657236,"predicate":"photos.photosSlice","params":[{"name":"count","type":"int"},{"name":"photos","type":"Vector"},{"name":"users","type":"Vector"}],"type":"photos.Photos"},{"id":539045032,"predicate":"photos.photo","params":[{"name":"photo","type":"Photo"},{"name":"users","type":"Vector"}],"type":"photos.Photo"},{"id":157948117,"predicate":"upload.file","params":[{"name":"type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.File"},{"id":-242427324,"predicate":"upload.fileCdnRedirect","params":[{"name":"dc_id","type":"int"},{"name":"file_token","type":"bytes"},{"name":"encryption_key","type":"bytes"},{"name":"encryption_iv","type":"bytes"},{"name":"file_hashes","type":"Vector"}],"type":"upload.File"},{"id":414687501,"predicate":"dcOption","params":[{"name":"flags","type":"#"},{"name":"ipv6","type":"flags.0?true"},{"name":"media_only","type":"flags.1?true"},{"name":"tcpo_only","type":"flags.2?true"},{"name":"cdn","type":"flags.3?true"},{"name":"static","type":"flags.4?true"},{"name":"id","type":"int"},{"name":"ip_address","type":"string"},{"name":"port","type":"int"},{"name":"secret","type":"flags.10?bytes"}],"type":"DcOption"},{"id":856375399,"predicate":"config","params":[{"name":"flags","type":"#"},{"name":"phonecalls_enabled","type":"flags.1?true"},{"name":"default_p2p_contacts","type":"flags.3?true"},{"name":"preload_featured_stickers","type":"flags.4?true"},{"name":"ignore_phone_entities","type":"flags.5?true"},{"name":"revoke_pm_inbox","type":"flags.6?true"},{"name":"blocked_mode","type":"flags.8?true"},{"name":"pfs_enabled","type":"flags.13?true"},{"name":"date","type":"int"},{"name":"expires","type":"int"},{"name":"test_mode","type":"Bool"},{"name":"this_dc","type":"int"},{"name":"dc_options","type":"Vector"},{"name":"dc_txt_domain_name","type":"string"},{"name":"chat_size_max","type":"int"},{"name":"megagroup_size_max","type":"int"},{"name":"forwarded_count_max","type":"int"},{"name":"online_update_period_ms","type":"int"},{"name":"offline_blur_timeout_ms","type":"int"},{"name":"offline_idle_timeout_ms","type":"int"},{"name":"online_cloud_timeout_ms","type":"int"},{"name":"notify_cloud_delay_ms","type":"int"},{"name":"notify_default_delay_ms","type":"int"},{"name":"push_chat_period_ms","type":"int"},{"name":"push_chat_limit","type":"int"},{"name":"saved_gifs_limit","type":"int"},{"name":"edit_time_limit","type":"int"},{"name":"revoke_time_limit","type":"int"},{"name":"revoke_pm_time_limit","type":"int"},{"name":"rating_e_decay","type":"int"},{"name":"stickers_recent_limit","type":"int"},{"name":"stickers_faved_limit","type":"int"},{"name":"channels_read_media_period","type":"int"},{"name":"tmp_sessions","type":"flags.0?int"},{"name":"pinned_dialogs_count_max","type":"int"},{"name":"pinned_infolder_count_max","type":"int"},{"name":"call_receive_timeout_ms","type":"int"},{"name":"call_ring_timeout_ms","type":"int"},{"name":"call_connect_timeout_ms","type":"int"},{"name":"call_packet_timeout_ms","type":"int"},{"name":"me_url_prefix","type":"string"},{"name":"autoupdate_url_prefix","type":"flags.7?string"},{"name":"gif_search_username","type":"flags.9?string"},{"name":"venue_search_username","type":"flags.10?string"},{"name":"img_search_username","type":"flags.11?string"},{"name":"static_maps_provider","type":"flags.12?string"},{"name":"caption_length_max","type":"int"},{"name":"message_length_max","type":"int"},{"name":"webfile_dc_id","type":"int"},{"name":"suggested_lang_code","type":"flags.2?string"},{"name":"lang_pack_version","type":"flags.2?int"},{"name":"base_lang_pack_version","type":"flags.2?int"}],"type":"Config"},{"id":-1910892683,"predicate":"nearestDc","params":[{"name":"country","type":"string"},{"name":"this_dc","type":"int"},{"name":"nearest_dc","type":"int"}],"type":"NearestDc"},{"id":-860107216,"predicate":"help.appUpdate","params":[{"name":"flags","type":"#"},{"name":"can_not_skip","type":"flags.0?true"},{"name":"id","type":"int"},{"name":"version","type":"string"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"document","type":"flags.1?Document"},{"name":"url","type":"flags.2?string"},{"name":"sticker","type":"flags.3?Document"}],"type":"help.AppUpdate"},{"id":-1000708810,"predicate":"help.noAppUpdate","params":[],"type":"help.AppUpdate"},{"id":415997816,"predicate":"help.inviteText","params":[{"name":"message","type":"string"}],"type":"help.InviteText"},{"id":-1417756512,"predicate":"encryptedChatEmpty","params":[{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":1722964307,"predicate":"encryptedChatWaiting","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"}],"type":"EncryptedChat"},{"id":1223809356,"predicate":"encryptedChatRequested","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1643173063,"predicate":"encryptedChat","params":[{"name":"id","type":"int"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":505183301,"predicate":"encryptedChatDiscarded","params":[{"name":"flags","type":"#"},{"name":"history_deleted","type":"flags.0?true"},{"name":"id","type":"int"}],"type":"EncryptedChat"},{"id":-247351839,"predicate":"inputEncryptedChat","params":[{"name":"chat_id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedChat"},{"id":-1038136962,"predicate":"encryptedFileEmpty","params":[],"type":"EncryptedFile"},{"id":1248893260,"predicate":"encryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"EncryptedFile"},{"id":406307684,"predicate":"inputEncryptedFileEmpty","params":[],"type":"InputEncryptedFile"},{"id":1690108678,"predicate":"inputEncryptedFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":1511503333,"predicate":"inputEncryptedFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputEncryptedFile"},{"id":767652808,"predicate":"inputEncryptedFileBigUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"key_fingerprint","type":"int"}],"type":"InputEncryptedFile"},{"id":-317144808,"predicate":"encryptedMessage","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"},{"name":"file","type":"EncryptedFile"}],"type":"EncryptedMessage"},{"id":594758406,"predicate":"encryptedMessageService","params":[{"name":"random_id","type":"long"},{"name":"chat_id","type":"int"},{"name":"date","type":"int"},{"name":"bytes","type":"bytes"}],"type":"EncryptedMessage"},{"id":-1058912715,"predicate":"messages.dhConfigNotModified","params":[{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":740433629,"predicate":"messages.dhConfig","params":[{"name":"g","type":"int"},{"name":"p","type":"bytes"},{"name":"version","type":"int"},{"name":"random","type":"bytes"}],"type":"messages.DhConfig"},{"id":1443858741,"predicate":"messages.sentEncryptedMessage","params":[{"name":"date","type":"int"}],"type":"messages.SentEncryptedMessage"},{"id":-1802240206,"predicate":"messages.sentEncryptedFile","params":[{"name":"date","type":"int"},{"name":"file","type":"EncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":1928391342,"predicate":"inputDocumentEmpty","params":[],"type":"InputDocument"},{"id":448771445,"predicate":"inputDocument","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"}],"type":"InputDocument"},{"id":922273905,"predicate":"documentEmpty","params":[{"name":"id","type":"long"}],"type":"Document"},{"id":512177195,"predicate":"document","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"file_reference","type":"bytes"},{"name":"date","type":"int"},{"name":"mime_type","type":"string"},{"name":"size","type":"int"},{"name":"thumbs","type":"flags.0?Vector"},{"name":"video_thumbs","type":"flags.1?Vector"},{"name":"dc_id","type":"int"},{"name":"attributes","type":"Vector"}],"type":"Document"},{"id":398898678,"predicate":"help.support","params":[{"name":"phone_number","type":"string"},{"name":"user","type":"User"}],"type":"help.Support"},{"id":-1613493288,"predicate":"notifyPeer","params":[{"name":"peer","type":"Peer"}],"type":"NotifyPeer"},{"id":-1261946036,"predicate":"notifyUsers","params":[],"type":"NotifyPeer"},{"id":-1073230141,"predicate":"notifyChats","params":[],"type":"NotifyPeer"},{"id":-703403793,"predicate":"notifyBroadcasts","params":[],"type":"NotifyPeer"},{"id":381645902,"predicate":"sendMessageTypingAction","params":[],"type":"SendMessageAction"},{"id":-44119819,"predicate":"sendMessageCancelAction","params":[],"type":"SendMessageAction"},{"id":-1584933265,"predicate":"sendMessageRecordVideoAction","params":[],"type":"SendMessageAction"},{"id":-378127636,"predicate":"sendMessageUploadVideoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-718310409,"predicate":"sendMessageRecordAudioAction","params":[],"type":"SendMessageAction"},{"id":-212740181,"predicate":"sendMessageUploadAudioAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-774682074,"predicate":"sendMessageUploadPhotoAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-1441998364,"predicate":"sendMessageUploadDocumentAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":393186209,"predicate":"sendMessageGeoLocationAction","params":[],"type":"SendMessageAction"},{"id":1653390447,"predicate":"sendMessageChooseContactAction","params":[],"type":"SendMessageAction"},{"id":-580219064,"predicate":"sendMessageGamePlayAction","params":[],"type":"SendMessageAction"},{"id":-1997373508,"predicate":"sendMessageRecordRoundAction","params":[],"type":"SendMessageAction"},{"id":608050278,"predicate":"sendMessageUploadRoundAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-651419003,"predicate":"speakingInGroupCallAction","params":[],"type":"SendMessageAction"},{"id":-606432698,"predicate":"sendMessageHistoryImportAction","params":[{"name":"progress","type":"int"}],"type":"SendMessageAction"},{"id":-1336228175,"predicate":"sendMessageChooseStickerAction","params":[],"type":"SendMessageAction"},{"id":1781674934,"predicate":"sendMessageEmojiInteraction","params":[{"name":"emoticon","type":"string"},{"name":"interaction","type":"DataJSON"}],"type":"SendMessageAction"},{"id":-1234857938,"predicate":"sendMessageEmojiInteractionSeen","params":[{"name":"emoticon","type":"string"}],"type":"SendMessageAction"},{"id":-1290580579,"predicate":"contacts.found","params":[{"name":"my_results","type":"Vector"},{"name":"results","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.Found"},{"id":1335282456,"predicate":"inputPrivacyKeyStatusTimestamp","params":[],"type":"InputPrivacyKey"},{"id":-1107622874,"predicate":"inputPrivacyKeyChatInvite","params":[],"type":"InputPrivacyKey"},{"id":-88417185,"predicate":"inputPrivacyKeyPhoneCall","params":[],"type":"InputPrivacyKey"},{"id":-610373422,"predicate":"inputPrivacyKeyPhoneP2P","params":[],"type":"InputPrivacyKey"},{"id":-1529000952,"predicate":"inputPrivacyKeyForwards","params":[],"type":"InputPrivacyKey"},{"id":1461304012,"predicate":"inputPrivacyKeyProfilePhoto","params":[],"type":"InputPrivacyKey"},{"id":55761658,"predicate":"inputPrivacyKeyPhoneNumber","params":[],"type":"InputPrivacyKey"},{"id":-786326563,"predicate":"inputPrivacyKeyAddedByPhone","params":[],"type":"InputPrivacyKey"},{"id":-1137792208,"predicate":"privacyKeyStatusTimestamp","params":[],"type":"PrivacyKey"},{"id":1343122938,"predicate":"privacyKeyChatInvite","params":[],"type":"PrivacyKey"},{"id":1030105979,"predicate":"privacyKeyPhoneCall","params":[],"type":"PrivacyKey"},{"id":961092808,"predicate":"privacyKeyPhoneP2P","params":[],"type":"PrivacyKey"},{"id":1777096355,"predicate":"privacyKeyForwards","params":[],"type":"PrivacyKey"},{"id":-1777000467,"predicate":"privacyKeyProfilePhoto","params":[],"type":"PrivacyKey"},{"id":-778378131,"predicate":"privacyKeyPhoneNumber","params":[],"type":"PrivacyKey"},{"id":1124062251,"predicate":"privacyKeyAddedByPhone","params":[],"type":"PrivacyKey"},{"id":218751099,"predicate":"inputPrivacyValueAllowContacts","params":[],"type":"InputPrivacyRule"},{"id":407582158,"predicate":"inputPrivacyValueAllowAll","params":[],"type":"InputPrivacyRule"},{"id":320652927,"predicate":"inputPrivacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":195371015,"predicate":"inputPrivacyValueDisallowContacts","params":[],"type":"InputPrivacyRule"},{"id":-697604407,"predicate":"inputPrivacyValueDisallowAll","params":[],"type":"InputPrivacyRule"},{"id":-1877932953,"predicate":"inputPrivacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-2079962673,"predicate":"inputPrivacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-380694650,"predicate":"inputPrivacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"InputPrivacyRule"},{"id":-123988,"predicate":"privacyValueAllowContacts","params":[],"type":"PrivacyRule"},{"id":1698855810,"predicate":"privacyValueAllowAll","params":[],"type":"PrivacyRule"},{"id":-1198497870,"predicate":"privacyValueAllowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":-125240806,"predicate":"privacyValueDisallowContacts","params":[],"type":"PrivacyRule"},{"id":-1955338397,"predicate":"privacyValueDisallowAll","params":[],"type":"PrivacyRule"},{"id":-463335103,"predicate":"privacyValueDisallowUsers","params":[{"name":"users","type":"Vector"}],"type":"PrivacyRule"},{"id":1796427406,"predicate":"privacyValueAllowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":1103656293,"predicate":"privacyValueDisallowChatParticipants","params":[{"name":"chats","type":"Vector"}],"type":"PrivacyRule"},{"id":1352683077,"predicate":"account.privacyRules","params":[{"name":"rules","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.PrivacyRules"},{"id":-1194283041,"predicate":"accountDaysTTL","params":[{"name":"days","type":"int"}],"type":"AccountDaysTTL"},{"id":1815593308,"predicate":"documentAttributeImageSize","params":[{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":297109817,"predicate":"documentAttributeAnimated","params":[],"type":"DocumentAttribute"},{"id":1662637586,"predicate":"documentAttributeSticker","params":[{"name":"flags","type":"#"},{"name":"mask","type":"flags.1?true"},{"name":"alt","type":"string"},{"name":"stickerset","type":"InputStickerSet"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"DocumentAttribute"},{"id":250621158,"predicate":"documentAttributeVideo","params":[{"name":"flags","type":"#"},{"name":"round_message","type":"flags.0?true"},{"name":"supports_streaming","type":"flags.1?true"},{"name":"duration","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"DocumentAttribute"},{"id":-1739392570,"predicate":"documentAttributeAudio","params":[{"name":"flags","type":"#"},{"name":"voice","type":"flags.10?true"},{"name":"duration","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"performer","type":"flags.1?string"},{"name":"waveform","type":"flags.2?bytes"}],"type":"DocumentAttribute"},{"id":358154344,"predicate":"documentAttributeFilename","params":[{"name":"file_name","type":"string"}],"type":"DocumentAttribute"},{"id":-1744710921,"predicate":"documentAttributeHasStickers","params":[],"type":"DocumentAttribute"},{"id":-244016606,"predicate":"messages.stickersNotModified","params":[],"type":"messages.Stickers"},{"id":816245886,"predicate":"messages.stickers","params":[{"name":"hash","type":"long"},{"name":"stickers","type":"Vector"}],"type":"messages.Stickers"},{"id":313694676,"predicate":"stickerPack","params":[{"name":"emoticon","type":"string"},{"name":"documents","type":"Vector"}],"type":"StickerPack"},{"id":-395967805,"predicate":"messages.allStickersNotModified","params":[],"type":"messages.AllStickers"},{"id":-843329861,"predicate":"messages.allStickers","params":[{"name":"hash","type":"long"},{"name":"sets","type":"Vector"}],"type":"messages.AllStickers"},{"id":-2066640507,"predicate":"messages.affectedMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"}],"type":"messages.AffectedMessages"},{"id":-350980120,"predicate":"webPageEmpty","params":[{"name":"id","type":"long"}],"type":"WebPage"},{"id":-981018084,"predicate":"webPagePending","params":[{"name":"id","type":"long"},{"name":"date","type":"int"}],"type":"WebPage"},{"id":-392411726,"predicate":"webPage","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"url","type":"string"},{"name":"display_url","type":"string"},{"name":"hash","type":"int"},{"name":"type","type":"flags.0?string"},{"name":"site_name","type":"flags.1?string"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"photo","type":"flags.4?Photo"},{"name":"embed_url","type":"flags.5?string"},{"name":"embed_type","type":"flags.5?string"},{"name":"embed_width","type":"flags.6?int"},{"name":"embed_height","type":"flags.6?int"},{"name":"duration","type":"flags.7?int"},{"name":"author","type":"flags.8?string"},{"name":"document","type":"flags.9?Document"},{"name":"cached_page","type":"flags.10?Page"},{"name":"attributes","type":"flags.12?Vector"}],"type":"WebPage"},{"id":1930545681,"predicate":"webPageNotModified","params":[{"name":"flags","type":"#"},{"name":"cached_page_views","type":"flags.0?int"}],"type":"WebPage"},{"id":-1392388579,"predicate":"authorization","params":[{"name":"flags","type":"#"},{"name":"current","type":"flags.0?true"},{"name":"official_app","type":"flags.1?true"},{"name":"password_pending","type":"flags.2?true"},{"name":"hash","type":"long"},{"name":"device_model","type":"string"},{"name":"platform","type":"string"},{"name":"system_version","type":"string"},{"name":"api_id","type":"int"},{"name":"app_name","type":"string"},{"name":"app_version","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"country","type":"string"},{"name":"region","type":"string"}],"type":"Authorization"},{"id":307276766,"predicate":"account.authorizations","params":[{"name":"authorizations","type":"Vector"}],"type":"account.Authorizations"},{"id":408623183,"predicate":"account.password","params":[{"name":"flags","type":"#"},{"name":"has_recovery","type":"flags.0?true"},{"name":"has_secure_values","type":"flags.1?true"},{"name":"has_password","type":"flags.2?true"},{"name":"current_algo","type":"flags.2?PasswordKdfAlgo"},{"name":"srp_B","type":"flags.2?bytes"},{"name":"srp_id","type":"flags.2?long"},{"name":"hint","type":"flags.3?string"},{"name":"email_unconfirmed_pattern","type":"flags.4?string"},{"name":"new_algo","type":"PasswordKdfAlgo"},{"name":"new_secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_random","type":"bytes"},{"name":"pending_reset_date","type":"flags.5?int"}],"type":"account.Password"},{"id":-1705233435,"predicate":"account.passwordSettings","params":[{"name":"flags","type":"#"},{"name":"email","type":"flags.0?string"},{"name":"secure_settings","type":"flags.1?SecureSecretSettings"}],"type":"account.PasswordSettings"},{"id":-1036572727,"predicate":"account.passwordInputSettings","params":[{"name":"flags","type":"#"},{"name":"new_algo","type":"flags.0?PasswordKdfAlgo"},{"name":"new_password_hash","type":"flags.0?bytes"},{"name":"hint","type":"flags.0?string"},{"name":"email","type":"flags.1?string"},{"name":"new_secure_settings","type":"flags.2?SecureSecretSettings"}],"type":"account.PasswordInputSettings"},{"id":326715557,"predicate":"auth.passwordRecovery","params":[{"name":"email_pattern","type":"string"}],"type":"auth.PasswordRecovery"},{"id":-1551583367,"predicate":"receivedNotifyMessage","params":[{"name":"id","type":"int"},{"name":"flags","type":"int"}],"type":"ReceivedNotifyMessage"},{"id":-1316944408,"predicate":"chatInviteExported","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.0?true"},{"name":"permanent","type":"flags.5?true"},{"name":"link","type":"string"},{"name":"admin_id","type":"long"},{"name":"date","type":"int"},{"name":"start_date","type":"flags.4?int"},{"name":"expire_date","type":"flags.1?int"},{"name":"usage_limit","type":"flags.2?int"},{"name":"usage","type":"flags.3?int"}],"type":"ExportedChatInvite"},{"id":1516793212,"predicate":"chatInviteAlready","params":[{"name":"chat","type":"Chat"}],"type":"ChatInvite"},{"id":-540871282,"predicate":"chatInvite","params":[{"name":"flags","type":"#"},{"name":"channel","type":"flags.0?true"},{"name":"broadcast","type":"flags.1?true"},{"name":"public","type":"flags.2?true"},{"name":"megagroup","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"photo","type":"Photo"},{"name":"participants_count","type":"int"},{"name":"participants","type":"flags.4?Vector"}],"type":"ChatInvite"},{"id":1634294960,"predicate":"chatInvitePeek","params":[{"name":"chat","type":"Chat"},{"name":"expires","type":"int"}],"type":"ChatInvite"},{"id":-4838507,"predicate":"inputStickerSetEmpty","params":[],"type":"InputStickerSet"},{"id":-1645763991,"predicate":"inputStickerSetID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputStickerSet"},{"id":-2044933984,"predicate":"inputStickerSetShortName","params":[{"name":"short_name","type":"string"}],"type":"InputStickerSet"},{"id":42402760,"predicate":"inputStickerSetAnimatedEmoji","params":[],"type":"InputStickerSet"},{"id":-427863538,"predicate":"inputStickerSetDice","params":[{"name":"emoticon","type":"string"}],"type":"InputStickerSet"},{"id":-673242758,"predicate":"stickerSet","params":[{"name":"flags","type":"#"},{"name":"archived","type":"flags.1?true"},{"name":"official","type":"flags.2?true"},{"name":"masks","type":"flags.3?true"},{"name":"animated","type":"flags.5?true"},{"name":"installed_date","type":"flags.0?int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumbs","type":"flags.4?Vector"},{"name":"thumb_dc_id","type":"flags.4?int"},{"name":"thumb_version","type":"flags.4?int"},{"name":"count","type":"int"},{"name":"hash","type":"int"}],"type":"StickerSet"},{"id":-1240849242,"predicate":"messages.stickerSet","params":[{"name":"set","type":"StickerSet"},{"name":"packs","type":"Vector"},{"name":"documents","type":"Vector"}],"type":"messages.StickerSet"},{"id":-1032140601,"predicate":"botCommand","params":[{"name":"command","type":"string"},{"name":"description","type":"string"}],"type":"BotCommand"},{"id":460632885,"predicate":"botInfo","params":[{"name":"user_id","type":"long"},{"name":"description","type":"string"},{"name":"commands","type":"Vector"}],"type":"BotInfo"},{"id":-1560655744,"predicate":"keyboardButton","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":629866245,"predicate":"keyboardButtonUrl","params":[{"name":"text","type":"string"},{"name":"url","type":"string"}],"type":"KeyboardButton"},{"id":901503851,"predicate":"keyboardButtonCallback","params":[{"name":"flags","type":"#"},{"name":"requires_password","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"data","type":"bytes"}],"type":"KeyboardButton"},{"id":-1318425559,"predicate":"keyboardButtonRequestPhone","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-59151553,"predicate":"keyboardButtonRequestGeoLocation","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":90744648,"predicate":"keyboardButtonSwitchInline","params":[{"name":"flags","type":"#"},{"name":"same_peer","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"query","type":"string"}],"type":"KeyboardButton"},{"id":1358175439,"predicate":"keyboardButtonGame","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":-1344716869,"predicate":"keyboardButtonBuy","params":[{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":280464681,"predicate":"keyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.0?string"},{"name":"url","type":"string"},{"name":"button_id","type":"int"}],"type":"KeyboardButton"},{"id":-802258988,"predicate":"inputKeyboardButtonUrlAuth","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"text","type":"string"},{"name":"fwd_text","type":"flags.1?string"},{"name":"url","type":"string"},{"name":"bot","type":"InputUser"}],"type":"KeyboardButton"},{"id":-1144565411,"predicate":"keyboardButtonRequestPoll","params":[{"name":"flags","type":"#"},{"name":"quiz","type":"flags.0?Bool"},{"name":"text","type":"string"}],"type":"KeyboardButton"},{"id":2002815875,"predicate":"keyboardButtonRow","params":[{"name":"buttons","type":"Vector"}],"type":"KeyboardButtonRow"},{"id":-1606526075,"predicate":"replyKeyboardHide","params":[{"name":"flags","type":"#"},{"name":"selective","type":"flags.2?true"}],"type":"ReplyMarkup"},{"id":-2035021048,"predicate":"replyKeyboardForceReply","params":[{"name":"flags","type":"#"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":-2049074735,"predicate":"replyKeyboardMarkup","params":[{"name":"flags","type":"#"},{"name":"resize","type":"flags.0?true"},{"name":"single_use","type":"flags.1?true"},{"name":"selective","type":"flags.2?true"},{"name":"rows","type":"Vector"},{"name":"placeholder","type":"flags.3?string"}],"type":"ReplyMarkup"},{"id":1218642516,"predicate":"replyInlineMarkup","params":[{"name":"rows","type":"Vector"}],"type":"ReplyMarkup"},{"id":-1148011883,"predicate":"messageEntityUnknown","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-100378723,"predicate":"messageEntityMention","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1868782349,"predicate":"messageEntityHashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1827637959,"predicate":"messageEntityBotCommand","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1859134776,"predicate":"messageEntityUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1692693954,"predicate":"messageEntityEmail","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1117713463,"predicate":"messageEntityBold","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-2106619040,"predicate":"messageEntityItalic","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":681706865,"predicate":"messageEntityCode","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1938967520,"predicate":"messageEntityPre","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"language","type":"string"}],"type":"MessageEntity"},{"id":1990644519,"predicate":"messageEntityTextUrl","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"url","type":"string"}],"type":"MessageEntity"},{"id":-595914432,"predicate":"messageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"long"}],"type":"MessageEntity"},{"id":546203849,"predicate":"inputMessageEntityMentionName","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"MessageEntity"},{"id":-1687559349,"predicate":"messageEntityPhone","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1280209983,"predicate":"messageEntityCashtag","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1672577397,"predicate":"messageEntityUnderline","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-1090087980,"predicate":"messageEntityStrike","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":34469328,"predicate":"messageEntityBlockquote","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":1981704948,"predicate":"messageEntityBankCard","params":[{"name":"offset","type":"int"},{"name":"length","type":"int"}],"type":"MessageEntity"},{"id":-292807034,"predicate":"inputChannelEmpty","params":[],"type":"InputChannel"},{"id":-212145112,"predicate":"inputChannel","params":[{"name":"channel_id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputChannel"},{"id":1536380829,"predicate":"inputChannelFromMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"channel_id","type":"long"}],"type":"InputChannel"},{"id":2131196633,"predicate":"contacts.resolvedPeer","params":[{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.ResolvedPeer"},{"id":182649427,"predicate":"messageRange","params":[{"name":"min_id","type":"int"},{"name":"max_id","type":"int"}],"type":"MessageRange"},{"id":1041346555,"predicate":"updates.channelDifferenceEmpty","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"}],"type":"updates.ChannelDifference"},{"id":-1531132162,"predicate":"updates.channelDifferenceTooLong","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"timeout","type":"flags.1?int"},{"name":"dialog","type":"Dialog"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":543450958,"predicate":"updates.channelDifference","params":[{"name":"flags","type":"#"},{"name":"final","type":"flags.0?true"},{"name":"pts","type":"int"},{"name":"timeout","type":"flags.1?int"},{"name":"new_messages","type":"Vector"},{"name":"other_updates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"updates.ChannelDifference"},{"id":-1798033689,"predicate":"channelMessagesFilterEmpty","params":[],"type":"ChannelMessagesFilter"},{"id":-847783593,"predicate":"channelMessagesFilter","params":[{"name":"flags","type":"#"},{"name":"exclude_new_messages","type":"flags.1?true"},{"name":"ranges","type":"Vector"}],"type":"ChannelMessagesFilter"},{"id":-1072953408,"predicate":"channelParticipant","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":682146919,"predicate":"channelParticipantSelf","params":[{"name":"user_id","type":"long"},{"name":"inviter_id","type":"long"},{"name":"date","type":"int"}],"type":"ChannelParticipant"},{"id":803602899,"predicate":"channelParticipantCreator","params":[{"name":"flags","type":"#"},{"name":"user_id","type":"long"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.0?string"}],"type":"ChannelParticipant"},{"id":885242707,"predicate":"channelParticipantAdmin","params":[{"name":"flags","type":"#"},{"name":"can_edit","type":"flags.0?true"},{"name":"self","type":"flags.1?true"},{"name":"user_id","type":"long"},{"name":"inviter_id","type":"flags.1?long"},{"name":"promoted_by","type":"long"},{"name":"date","type":"int"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"flags.2?string"}],"type":"ChannelParticipant"},{"id":1844969806,"predicate":"channelParticipantBanned","params":[{"name":"flags","type":"#"},{"name":"left","type":"flags.0?true"},{"name":"peer","type":"Peer"},{"name":"kicked_by","type":"long"},{"name":"date","type":"int"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"ChannelParticipant"},{"id":453242886,"predicate":"channelParticipantLeft","params":[{"name":"peer","type":"Peer"}],"type":"ChannelParticipant"},{"id":-566281095,"predicate":"channelParticipantsRecent","params":[],"type":"ChannelParticipantsFilter"},{"id":-1268741783,"predicate":"channelParticipantsAdmins","params":[],"type":"ChannelParticipantsFilter"},{"id":-1548400251,"predicate":"channelParticipantsKicked","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-1328445861,"predicate":"channelParticipantsBots","params":[],"type":"ChannelParticipantsFilter"},{"id":338142689,"predicate":"channelParticipantsBanned","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":106343499,"predicate":"channelParticipantsSearch","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-1150621555,"predicate":"channelParticipantsContacts","params":[{"name":"q","type":"string"}],"type":"ChannelParticipantsFilter"},{"id":-531931925,"predicate":"channelParticipantsMentions","params":[{"name":"flags","type":"#"},{"name":"q","type":"flags.0?string"},{"name":"top_msg_id","type":"flags.1?int"}],"type":"ChannelParticipantsFilter"},{"id":-1699676497,"predicate":"channels.channelParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipants"},{"id":-266911767,"predicate":"channels.channelParticipantsNotModified","params":[],"type":"channels.ChannelParticipants"},{"id":-541588713,"predicate":"channels.channelParticipant","params":[{"name":"participant","type":"ChannelParticipant"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.ChannelParticipant"},{"id":2013922064,"predicate":"help.termsOfService","params":[{"name":"flags","type":"#"},{"name":"popup","type":"flags.0?true"},{"name":"id","type":"DataJSON"},{"name":"text","type":"string"},{"name":"entities","type":"Vector"},{"name":"min_age_confirm","type":"flags.1?int"}],"type":"help.TermsOfService"},{"id":-402498398,"predicate":"messages.savedGifsNotModified","params":[],"type":"messages.SavedGifs"},{"id":-2069878259,"predicate":"messages.savedGifs","params":[{"name":"hash","type":"long"},{"name":"gifs","type":"Vector"}],"type":"messages.SavedGifs"},{"id":864077702,"predicate":"inputBotInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1036876423,"predicate":"inputBotInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-1768777083,"predicate":"inputBotInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1098628881,"predicate":"inputBotInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-1494368259,"predicate":"inputBotInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":1262639204,"predicate":"inputBotInlineMessageGame","params":[{"name":"flags","type":"#"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-672693723,"predicate":"inputBotInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?InputWebDocument"},{"name":"invoice","type":"Invoice"},{"name":"payload","type":"bytes"},{"name":"provider","type":"string"},{"name":"provider_data","type":"DataJSON"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"InputBotInlineMessage"},{"id":-2000710887,"predicate":"inputBotInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?InputWebDocument"},{"name":"content","type":"flags.5?InputWebDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":-1462213465,"predicate":"inputBotInlineResultPhoto","params":[{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"InputPhoto"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":-459324,"predicate":"inputBotInlineResultDocument","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"document","type":"InputDocument"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1336154098,"predicate":"inputBotInlineResultGame","params":[{"name":"id","type":"string"},{"name":"short_name","type":"string"},{"name":"send_message","type":"InputBotInlineMessage"}],"type":"InputBotInlineResult"},{"id":1984755728,"predicate":"botInlineMessageMediaAuto","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1937807902,"predicate":"botInlineMessageText","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":85477117,"predicate":"botInlineMessageMediaGeo","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"heading","type":"flags.0?int"},{"name":"period","type":"flags.1?int"},{"name":"proximity_notification_radius","type":"flags.3?int"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":-1970903652,"predicate":"botInlineMessageMediaVenue","params":[{"name":"flags","type":"#"},{"name":"geo","type":"GeoPoint"},{"name":"title","type":"string"},{"name":"address","type":"string"},{"name":"provider","type":"string"},{"name":"venue_id","type":"string"},{"name":"venue_type","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":416402882,"predicate":"botInlineMessageMediaContact","params":[{"name":"flags","type":"#"},{"name":"phone_number","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"vcard","type":"string"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":894081801,"predicate":"botInlineMessageMediaInvoice","params":[{"name":"flags","type":"#"},{"name":"shipping_address_requested","type":"flags.1?true"},{"name":"test","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.0?WebDocument"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"}],"type":"BotInlineMessage"},{"id":295067450,"predicate":"botInlineResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"title","type":"flags.1?string"},{"name":"description","type":"flags.2?string"},{"name":"url","type":"flags.3?string"},{"name":"thumb","type":"flags.4?WebDocument"},{"name":"content","type":"flags.5?WebDocument"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":400266251,"predicate":"botInlineMediaResult","params":[{"name":"flags","type":"#"},{"name":"id","type":"string"},{"name":"type","type":"string"},{"name":"photo","type":"flags.0?Photo"},{"name":"document","type":"flags.1?Document"},{"name":"title","type":"flags.2?string"},{"name":"description","type":"flags.3?string"},{"name":"send_message","type":"BotInlineMessage"}],"type":"BotInlineResult"},{"id":-1803769784,"predicate":"messages.botResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"query_id","type":"long"},{"name":"next_offset","type":"flags.1?string"},{"name":"switch_pm","type":"flags.2?InlineBotSwitchPM"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"users","type":"Vector"}],"type":"messages.BotResults"},{"id":1571494644,"predicate":"exportedMessageLink","params":[{"name":"link","type":"string"},{"name":"html","type":"string"}],"type":"ExportedMessageLink"},{"id":1601666510,"predicate":"messageFwdHeader","params":[{"name":"flags","type":"#"},{"name":"imported","type":"flags.7?true"},{"name":"from_id","type":"flags.0?Peer"},{"name":"from_name","type":"flags.5?string"},{"name":"date","type":"int"},{"name":"channel_post","type":"flags.2?int"},{"name":"post_author","type":"flags.3?string"},{"name":"saved_from_peer","type":"flags.4?Peer"},{"name":"saved_from_msg_id","type":"flags.4?int"},{"name":"psa_type","type":"flags.6?string"}],"type":"MessageFwdHeader"},{"id":1923290508,"predicate":"auth.codeTypeSms","params":[],"type":"auth.CodeType"},{"id":1948046307,"predicate":"auth.codeTypeCall","params":[],"type":"auth.CodeType"},{"id":577556219,"predicate":"auth.codeTypeFlashCall","params":[],"type":"auth.CodeType"},{"id":1035688326,"predicate":"auth.sentCodeTypeApp","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1073693790,"predicate":"auth.sentCodeTypeSms","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":1398007207,"predicate":"auth.sentCodeTypeCall","params":[{"name":"length","type":"int"}],"type":"auth.SentCodeType"},{"id":-1425815847,"predicate":"auth.sentCodeTypeFlashCall","params":[{"name":"pattern","type":"string"}],"type":"auth.SentCodeType"},{"id":911761060,"predicate":"messages.botCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"has_url","type":"flags.3?true"},{"name":"native_ui","type":"flags.4?true"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"messages.BotCallbackAnswer"},{"id":649453030,"predicate":"messages.messageEditData","params":[{"name":"flags","type":"#"},{"name":"caption","type":"flags.0?true"}],"type":"messages.MessageEditData"},{"id":-1995686519,"predicate":"inputBotInlineMessageID","params":[{"name":"dc_id","type":"int"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":-1227287081,"predicate":"inputBotInlineMessageID64","params":[{"name":"dc_id","type":"int"},{"name":"owner_id","type":"long"},{"name":"id","type":"int"},{"name":"access_hash","type":"long"}],"type":"InputBotInlineMessageID"},{"id":1008755359,"predicate":"inlineBotSwitchPM","params":[{"name":"text","type":"string"},{"name":"start_param","type":"string"}],"type":"InlineBotSwitchPM"},{"id":863093588,"predicate":"messages.peerDialogs","params":[{"name":"dialogs","type":"Vector"},{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"state","type":"updates.State"}],"type":"messages.PeerDialogs"},{"id":-305282981,"predicate":"topPeer","params":[{"name":"peer","type":"Peer"},{"name":"rating","type":"double"}],"type":"TopPeer"},{"id":-1419371685,"predicate":"topPeerCategoryBotsPM","params":[],"type":"TopPeerCategory"},{"id":344356834,"predicate":"topPeerCategoryBotsInline","params":[],"type":"TopPeerCategory"},{"id":104314861,"predicate":"topPeerCategoryCorrespondents","params":[],"type":"TopPeerCategory"},{"id":-1122524854,"predicate":"topPeerCategoryGroups","params":[],"type":"TopPeerCategory"},{"id":371037736,"predicate":"topPeerCategoryChannels","params":[],"type":"TopPeerCategory"},{"id":511092620,"predicate":"topPeerCategoryPhoneCalls","params":[],"type":"TopPeerCategory"},{"id":-1472172887,"predicate":"topPeerCategoryForwardUsers","params":[],"type":"TopPeerCategory"},{"id":-68239120,"predicate":"topPeerCategoryForwardChats","params":[],"type":"TopPeerCategory"},{"id":-75283823,"predicate":"topPeerCategoryPeers","params":[{"name":"category","type":"TopPeerCategory"},{"name":"count","type":"int"},{"name":"peers","type":"Vector"}],"type":"TopPeerCategoryPeers"},{"id":-567906571,"predicate":"contacts.topPeersNotModified","params":[],"type":"contacts.TopPeers"},{"id":1891070632,"predicate":"contacts.topPeers","params":[{"name":"categories","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"contacts.TopPeers"},{"id":-1255369827,"predicate":"contacts.topPeersDisabled","params":[],"type":"contacts.TopPeers"},{"id":453805082,"predicate":"draftMessageEmpty","params":[{"name":"flags","type":"#"},{"name":"date","type":"flags.0?int"}],"type":"DraftMessage"},{"id":-40996577,"predicate":"draftMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"},{"name":"date","type":"int"}],"type":"DraftMessage"},{"id":-958657434,"predicate":"messages.featuredStickersNotModified","params":[{"name":"count","type":"int"}],"type":"messages.FeaturedStickers"},{"id":-2067782896,"predicate":"messages.featuredStickers","params":[{"name":"hash","type":"long"},{"name":"count","type":"int"},{"name":"sets","type":"Vector"},{"name":"unread","type":"Vector"}],"type":"messages.FeaturedStickers"},{"id":186120336,"predicate":"messages.recentStickersNotModified","params":[],"type":"messages.RecentStickers"},{"id":-1999405994,"predicate":"messages.recentStickers","params":[{"name":"hash","type":"long"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"},{"name":"dates","type":"Vector"}],"type":"messages.RecentStickers"},{"id":1338747336,"predicate":"messages.archivedStickers","params":[{"name":"count","type":"int"},{"name":"sets","type":"Vector"}],"type":"messages.ArchivedStickers"},{"id":946083368,"predicate":"messages.stickerSetInstallResultSuccess","params":[],"type":"messages.StickerSetInstallResult"},{"id":904138920,"predicate":"messages.stickerSetInstallResultArchive","params":[{"name":"sets","type":"Vector"}],"type":"messages.StickerSetInstallResult"},{"id":1678812626,"predicate":"stickerSetCovered","params":[{"name":"set","type":"StickerSet"},{"name":"cover","type":"Document"}],"type":"StickerSetCovered"},{"id":872932635,"predicate":"stickerSetMultiCovered","params":[{"name":"set","type":"StickerSet"},{"name":"covers","type":"Vector"}],"type":"StickerSetCovered"},{"id":-1361650766,"predicate":"maskCoords","params":[{"name":"n","type":"int"},{"name":"x","type":"double"},{"name":"y","type":"double"},{"name":"zoom","type":"double"}],"type":"MaskCoords"},{"id":1251549527,"predicate":"inputStickeredMediaPhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"InputStickeredMedia"},{"id":70813275,"predicate":"inputStickeredMediaDocument","params":[{"name":"id","type":"InputDocument"}],"type":"InputStickeredMedia"},{"id":-1107729093,"predicate":"game","params":[{"name":"flags","type":"#"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"short_name","type":"string"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"Photo"},{"name":"document","type":"flags.0?Document"}],"type":"Game"},{"id":53231223,"predicate":"inputGameID","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGame"},{"id":-1020139510,"predicate":"inputGameShortName","params":[{"name":"bot_id","type":"InputUser"},{"name":"short_name","type":"string"}],"type":"InputGame"},{"id":1940093419,"predicate":"highScore","params":[{"name":"pos","type":"int"},{"name":"user_id","type":"long"},{"name":"score","type":"int"}],"type":"HighScore"},{"id":-1707344487,"predicate":"messages.highScores","params":[{"name":"scores","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.HighScores"},{"id":-599948721,"predicate":"textEmpty","params":[],"type":"RichText"},{"id":1950782688,"predicate":"textPlain","params":[{"name":"text","type":"string"}],"type":"RichText"},{"id":1730456516,"predicate":"textBold","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-653089380,"predicate":"textItalic","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1054465340,"predicate":"textUnderline","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-1678197867,"predicate":"textStrike","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1816074681,"predicate":"textFixed","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":1009288385,"predicate":"textUrl","params":[{"name":"text","type":"RichText"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"}],"type":"RichText"},{"id":-564523562,"predicate":"textEmail","params":[{"name":"text","type":"RichText"},{"name":"email","type":"string"}],"type":"RichText"},{"id":2120376535,"predicate":"textConcat","params":[{"name":"texts","type":"Vector"}],"type":"RichText"},{"id":-311786236,"predicate":"textSubscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":-939827711,"predicate":"textSuperscript","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":55281185,"predicate":"textMarked","params":[{"name":"text","type":"RichText"}],"type":"RichText"},{"id":483104362,"predicate":"textPhone","params":[{"name":"text","type":"RichText"},{"name":"phone","type":"string"}],"type":"RichText"},{"id":136105807,"predicate":"textImage","params":[{"name":"document_id","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"}],"type":"RichText"},{"id":894777186,"predicate":"textAnchor","params":[{"name":"text","type":"RichText"},{"name":"name","type":"string"}],"type":"RichText"},{"id":324435594,"predicate":"pageBlockUnsupported","params":[],"type":"PageBlock"},{"id":1890305021,"predicate":"pageBlockTitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1879401953,"predicate":"pageBlockSubtitle","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1162877472,"predicate":"pageBlockAuthorDate","params":[{"name":"author","type":"RichText"},{"name":"published_date","type":"int"}],"type":"PageBlock"},{"id":-1076861716,"predicate":"pageBlockHeader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-248793375,"predicate":"pageBlockSubheader","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":1182402406,"predicate":"pageBlockParagraph","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1066346178,"predicate":"pageBlockPreformatted","params":[{"name":"text","type":"RichText"},{"name":"language","type":"string"}],"type":"PageBlock"},{"id":1216809369,"predicate":"pageBlockFooter","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-618614392,"predicate":"pageBlockDivider","params":[],"type":"PageBlock"},{"id":-837994576,"predicate":"pageBlockAnchor","params":[{"name":"name","type":"string"}],"type":"PageBlock"},{"id":-454524911,"predicate":"pageBlockList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":641563686,"predicate":"pageBlockBlockquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":1329878739,"predicate":"pageBlockPullquote","params":[{"name":"text","type":"RichText"},{"name":"caption","type":"RichText"}],"type":"PageBlock"},{"id":391759200,"predicate":"pageBlockPhoto","params":[{"name":"flags","type":"#"},{"name":"photo_id","type":"long"},{"name":"caption","type":"PageCaption"},{"name":"url","type":"flags.0?string"},{"name":"webpage_id","type":"flags.0?long"}],"type":"PageBlock"},{"id":2089805750,"predicate":"pageBlockVideo","params":[{"name":"flags","type":"#"},{"name":"autoplay","type":"flags.0?true"},{"name":"loop","type":"flags.1?true"},{"name":"video_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":972174080,"predicate":"pageBlockCover","params":[{"name":"cover","type":"PageBlock"}],"type":"PageBlock"},{"id":-1468953147,"predicate":"pageBlockEmbed","params":[{"name":"flags","type":"#"},{"name":"full_width","type":"flags.0?true"},{"name":"allow_scrolling","type":"flags.3?true"},{"name":"url","type":"flags.1?string"},{"name":"html","type":"flags.2?string"},{"name":"poster_photo_id","type":"flags.4?long"},{"name":"w","type":"flags.5?int"},{"name":"h","type":"flags.5?int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-229005301,"predicate":"pageBlockEmbedPost","params":[{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"author_photo_id","type":"long"},{"name":"author","type":"string"},{"name":"date","type":"int"},{"name":"blocks","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":1705048653,"predicate":"pageBlockCollage","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":52401552,"predicate":"pageBlockSlideshow","params":[{"name":"items","type":"Vector"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-283684427,"predicate":"pageBlockChannel","params":[{"name":"channel","type":"Chat"}],"type":"PageBlock"},{"id":-2143067670,"predicate":"pageBlockAudio","params":[{"name":"audio_id","type":"long"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":504660880,"predicate":"pageBlockKicker","params":[{"name":"text","type":"RichText"}],"type":"PageBlock"},{"id":-1085412734,"predicate":"pageBlockTable","params":[{"name":"flags","type":"#"},{"name":"bordered","type":"flags.0?true"},{"name":"striped","type":"flags.1?true"},{"name":"title","type":"RichText"},{"name":"rows","type":"Vector"}],"type":"PageBlock"},{"id":-1702174239,"predicate":"pageBlockOrderedList","params":[{"name":"items","type":"Vector"}],"type":"PageBlock"},{"id":1987480557,"predicate":"pageBlockDetails","params":[{"name":"flags","type":"#"},{"name":"open","type":"flags.0?true"},{"name":"blocks","type":"Vector"},{"name":"title","type":"RichText"}],"type":"PageBlock"},{"id":370236054,"predicate":"pageBlockRelatedArticles","params":[{"name":"title","type":"RichText"},{"name":"articles","type":"Vector"}],"type":"PageBlock"},{"id":-1538310410,"predicate":"pageBlockMap","params":[{"name":"geo","type":"GeoPoint"},{"name":"zoom","type":"int"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"caption","type":"PageCaption"}],"type":"PageBlock"},{"id":-2048646399,"predicate":"phoneCallDiscardReasonMissed","params":[],"type":"PhoneCallDiscardReason"},{"id":-527056480,"predicate":"phoneCallDiscardReasonDisconnect","params":[],"type":"PhoneCallDiscardReason"},{"id":1471006352,"predicate":"phoneCallDiscardReasonHangup","params":[],"type":"PhoneCallDiscardReason"},{"id":-84416311,"predicate":"phoneCallDiscardReasonBusy","params":[],"type":"PhoneCallDiscardReason"},{"id":2104790276,"predicate":"dataJSON","params":[{"name":"data","type":"string"}],"type":"DataJSON"},{"id":-886477832,"predicate":"labeledPrice","params":[{"name":"label","type":"string"},{"name":"amount","type":"long"}],"type":"LabeledPrice"},{"id":215516896,"predicate":"invoice","params":[{"name":"flags","type":"#"},{"name":"test","type":"flags.0?true"},{"name":"name_requested","type":"flags.1?true"},{"name":"phone_requested","type":"flags.2?true"},{"name":"email_requested","type":"flags.3?true"},{"name":"shipping_address_requested","type":"flags.4?true"},{"name":"flexible","type":"flags.5?true"},{"name":"phone_to_provider","type":"flags.6?true"},{"name":"email_to_provider","type":"flags.7?true"},{"name":"currency","type":"string"},{"name":"prices","type":"Vector"},{"name":"max_tip_amount","type":"flags.8?long"},{"name":"suggested_tip_amounts","type":"flags.8?Vector"}],"type":"Invoice"},{"id":-368917890,"predicate":"paymentCharge","params":[{"name":"id","type":"string"},{"name":"provider_charge_id","type":"string"}],"type":"PaymentCharge"},{"id":512535275,"predicate":"postAddress","params":[{"name":"street_line1","type":"string"},{"name":"street_line2","type":"string"},{"name":"city","type":"string"},{"name":"state","type":"string"},{"name":"country_iso2","type":"string"},{"name":"post_code","type":"string"}],"type":"PostAddress"},{"id":-1868808300,"predicate":"paymentRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"name","type":"flags.0?string"},{"name":"phone","type":"flags.1?string"},{"name":"email","type":"flags.2?string"},{"name":"shipping_address","type":"flags.3?PostAddress"}],"type":"PaymentRequestedInfo"},{"id":-842892769,"predicate":"paymentSavedCredentialsCard","params":[{"name":"id","type":"string"},{"name":"title","type":"string"}],"type":"PaymentSavedCredentials"},{"id":475467473,"predicate":"webDocument","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":-104284986,"predicate":"webDocumentNoProxy","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"WebDocument"},{"id":-1678949555,"predicate":"inputWebDocument","params":[{"name":"url","type":"string"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"attributes","type":"Vector"}],"type":"InputWebDocument"},{"id":-1036396922,"predicate":"inputWebFileLocation","params":[{"name":"url","type":"string"},{"name":"access_hash","type":"long"}],"type":"InputWebFileLocation"},{"id":-1625153079,"predicate":"inputWebFileGeoPointLocation","params":[{"name":"geo_point","type":"InputGeoPoint"},{"name":"access_hash","type":"long"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"zoom","type":"int"},{"name":"scale","type":"int"}],"type":"InputWebFileLocation"},{"id":568808380,"predicate":"upload.webFile","params":[{"name":"size","type":"int"},{"name":"mime_type","type":"string"},{"name":"file_type","type":"storage.FileType"},{"name":"mtime","type":"int"},{"name":"bytes","type":"bytes"}],"type":"upload.WebFile"},{"id":378828315,"predicate":"payments.paymentForm","params":[{"name":"flags","type":"#"},{"name":"can_save_credentials","type":"flags.2?true"},{"name":"password_missing","type":"flags.3?true"},{"name":"form_id","type":"long"},{"name":"bot_id","type":"long"},{"name":"invoice","type":"Invoice"},{"name":"provider_id","type":"long"},{"name":"url","type":"string"},{"name":"native_provider","type":"flags.4?string"},{"name":"native_params","type":"flags.4?DataJSON"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"},{"name":"saved_credentials","type":"flags.1?PaymentSavedCredentials"},{"name":"users","type":"Vector"}],"type":"payments.PaymentForm"},{"id":-784000893,"predicate":"payments.validatedRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"id","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"payments.ValidatedRequestedInfo"},{"id":1314881805,"predicate":"payments.paymentResult","params":[{"name":"updates","type":"Updates"}],"type":"payments.PaymentResult"},{"id":-666824391,"predicate":"payments.paymentVerificationNeeded","params":[{"name":"url","type":"string"}],"type":"payments.PaymentResult"},{"id":1891958275,"predicate":"payments.paymentReceipt","params":[{"name":"flags","type":"#"},{"name":"date","type":"int"},{"name":"bot_id","type":"long"},{"name":"provider_id","type":"long"},{"name":"title","type":"string"},{"name":"description","type":"string"},{"name":"photo","type":"flags.2?WebDocument"},{"name":"invoice","type":"Invoice"},{"name":"info","type":"flags.0?PaymentRequestedInfo"},{"name":"shipping","type":"flags.1?ShippingOption"},{"name":"tip_amount","type":"flags.3?long"},{"name":"currency","type":"string"},{"name":"total_amount","type":"long"},{"name":"credentials_title","type":"string"},{"name":"users","type":"Vector"}],"type":"payments.PaymentReceipt"},{"id":-74456004,"predicate":"payments.savedInfo","params":[{"name":"flags","type":"#"},{"name":"has_saved_credentials","type":"flags.1?true"},{"name":"saved_info","type":"flags.0?PaymentRequestedInfo"}],"type":"payments.SavedInfo"},{"id":-1056001329,"predicate":"inputPaymentCredentialsSaved","params":[{"name":"id","type":"string"},{"name":"tmp_password","type":"bytes"}],"type":"InputPaymentCredentials"},{"id":873977640,"predicate":"inputPaymentCredentials","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":178373535,"predicate":"inputPaymentCredentialsApplePay","params":[{"name":"payment_data","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-1966921727,"predicate":"inputPaymentCredentialsGooglePay","params":[{"name":"payment_token","type":"DataJSON"}],"type":"InputPaymentCredentials"},{"id":-614138572,"predicate":"account.tmpPassword","params":[{"name":"tmp_password","type":"bytes"},{"name":"valid_until","type":"int"}],"type":"account.TmpPassword"},{"id":-1239335713,"predicate":"shippingOption","params":[{"name":"id","type":"string"},{"name":"title","type":"string"},{"name":"prices","type":"Vector"}],"type":"ShippingOption"},{"id":-6249322,"predicate":"inputStickerSetItem","params":[{"name":"flags","type":"#"},{"name":"document","type":"InputDocument"},{"name":"emoji","type":"string"},{"name":"mask_coords","type":"flags.0?MaskCoords"}],"type":"InputStickerSetItem"},{"id":506920429,"predicate":"inputPhoneCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputPhoneCall"},{"id":1399245077,"predicate":"phoneCallEmpty","params":[{"name":"id","type":"long"}],"type":"PhoneCall"},{"id":-987599081,"predicate":"phoneCallWaiting","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"receive_date","type":"flags.0?int"}],"type":"PhoneCall"},{"id":347139340,"predicate":"phoneCallRequested","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":912311057,"predicate":"phoneCallAccepted","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"PhoneCall"},{"id":-1770029977,"predicate":"phoneCall","params":[{"name":"flags","type":"#"},{"name":"p2p_allowed","type":"flags.5?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"date","type":"int"},{"name":"admin_id","type":"long"},{"name":"participant_id","type":"long"},{"name":"g_a_or_b","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"},{"name":"connections","type":"Vector"},{"name":"start_date","type":"int"}],"type":"PhoneCall"},{"id":1355435489,"predicate":"phoneCallDiscarded","params":[{"name":"flags","type":"#"},{"name":"need_rating","type":"flags.2?true"},{"name":"need_debug","type":"flags.3?true"},{"name":"video","type":"flags.6?true"},{"name":"id","type":"long"},{"name":"reason","type":"flags.0?PhoneCallDiscardReason"},{"name":"duration","type":"flags.1?int"}],"type":"PhoneCall"},{"id":-1655957568,"predicate":"phoneConnection","params":[{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"peer_tag","type":"bytes"}],"type":"PhoneConnection"},{"id":1667228533,"predicate":"phoneConnectionWebrtc","params":[{"name":"flags","type":"#"},{"name":"turn","type":"flags.0?true"},{"name":"stun","type":"flags.1?true"},{"name":"id","type":"long"},{"name":"ip","type":"string"},{"name":"ipv6","type":"string"},{"name":"port","type":"int"},{"name":"username","type":"string"},{"name":"password","type":"string"}],"type":"PhoneConnection"},{"id":-58224696,"predicate":"phoneCallProtocol","params":[{"name":"flags","type":"#"},{"name":"udp_p2p","type":"flags.0?true"},{"name":"udp_reflector","type":"flags.1?true"},{"name":"min_layer","type":"int"},{"name":"max_layer","type":"int"},{"name":"library_versions","type":"Vector"}],"type":"PhoneCallProtocol"},{"id":-326966976,"predicate":"phone.phoneCall","params":[{"name":"phone_call","type":"PhoneCall"},{"name":"users","type":"Vector"}],"type":"phone.PhoneCall"},{"id":-290921362,"predicate":"upload.cdnFileReuploadNeeded","params":[{"name":"request_token","type":"bytes"}],"type":"upload.CdnFile"},{"id":-1449145777,"predicate":"upload.cdnFile","params":[{"name":"bytes","type":"bytes"}],"type":"upload.CdnFile"},{"id":-914167110,"predicate":"cdnPublicKey","params":[{"name":"dc_id","type":"int"},{"name":"public_key","type":"string"}],"type":"CdnPublicKey"},{"id":1462101002,"predicate":"cdnConfig","params":[{"name":"public_keys","type":"Vector"}],"type":"CdnConfig"},{"id":-892239370,"predicate":"langPackString","params":[{"name":"key","type":"string"},{"name":"value","type":"string"}],"type":"LangPackString"},{"id":1816636575,"predicate":"langPackStringPluralized","params":[{"name":"flags","type":"#"},{"name":"key","type":"string"},{"name":"zero_value","type":"flags.0?string"},{"name":"one_value","type":"flags.1?string"},{"name":"two_value","type":"flags.2?string"},{"name":"few_value","type":"flags.3?string"},{"name":"many_value","type":"flags.4?string"},{"name":"other_value","type":"string"}],"type":"LangPackString"},{"id":695856818,"predicate":"langPackStringDeleted","params":[{"name":"key","type":"string"}],"type":"LangPackString"},{"id":-209337866,"predicate":"langPackDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"strings","type":"Vector"}],"type":"LangPackDifference"},{"id":-288727837,"predicate":"langPackLanguage","params":[{"name":"flags","type":"#"},{"name":"official","type":"flags.0?true"},{"name":"rtl","type":"flags.2?true"},{"name":"beta","type":"flags.3?true"},{"name":"name","type":"string"},{"name":"native_name","type":"string"},{"name":"lang_code","type":"string"},{"name":"base_lang_code","type":"flags.1?string"},{"name":"plural_code","type":"string"},{"name":"strings_count","type":"int"},{"name":"translated_count","type":"int"},{"name":"translations_url","type":"string"}],"type":"LangPackLanguage"},{"id":-421545947,"predicate":"channelAdminLogEventActionChangeTitle","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1427671598,"predicate":"channelAdminLogEventActionChangeAbout","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1783299128,"predicate":"channelAdminLogEventActionChangeUsername","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":1129042607,"predicate":"channelAdminLogEventActionChangePhoto","params":[{"name":"prev_photo","type":"Photo"},{"name":"new_photo","type":"Photo"}],"type":"ChannelAdminLogEventAction"},{"id":460916654,"predicate":"channelAdminLogEventActionToggleInvites","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":648939889,"predicate":"channelAdminLogEventActionToggleSignatures","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":-370660328,"predicate":"channelAdminLogEventActionUpdatePinned","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1889215493,"predicate":"channelAdminLogEventActionEditMessage","params":[{"name":"prev_message","type":"Message"},{"name":"new_message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":1121994683,"predicate":"channelAdminLogEventActionDeleteMessage","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":405815507,"predicate":"channelAdminLogEventActionParticipantJoin","params":[],"type":"ChannelAdminLogEventAction"},{"id":-124291086,"predicate":"channelAdminLogEventActionParticipantLeave","params":[],"type":"ChannelAdminLogEventAction"},{"id":-484690728,"predicate":"channelAdminLogEventActionParticipantInvite","params":[{"name":"participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-422036098,"predicate":"channelAdminLogEventActionParticipantToggleBan","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-714643696,"predicate":"channelAdminLogEventActionParticipantToggleAdmin","params":[{"name":"prev_participant","type":"ChannelParticipant"},{"name":"new_participant","type":"ChannelParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-1312568665,"predicate":"channelAdminLogEventActionChangeStickerSet","params":[{"name":"prev_stickerset","type":"InputStickerSet"},{"name":"new_stickerset","type":"InputStickerSet"}],"type":"ChannelAdminLogEventAction"},{"id":1599903217,"predicate":"channelAdminLogEventActionTogglePreHistoryHidden","params":[{"name":"new_value","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":771095562,"predicate":"channelAdminLogEventActionDefaultBannedRights","params":[{"name":"prev_banned_rights","type":"ChatBannedRights"},{"name":"new_banned_rights","type":"ChatBannedRights"}],"type":"ChannelAdminLogEventAction"},{"id":-1895328189,"predicate":"channelAdminLogEventActionStopPoll","params":[{"name":"message","type":"Message"}],"type":"ChannelAdminLogEventAction"},{"id":84703944,"predicate":"channelAdminLogEventActionChangeLinkedChat","params":[{"name":"prev_value","type":"long"},{"name":"new_value","type":"long"}],"type":"ChannelAdminLogEventAction"},{"id":241923758,"predicate":"channelAdminLogEventActionChangeLocation","params":[{"name":"prev_value","type":"ChannelLocation"},{"name":"new_value","type":"ChannelLocation"}],"type":"ChannelAdminLogEventAction"},{"id":1401984889,"predicate":"channelAdminLogEventActionToggleSlowMode","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":589338437,"predicate":"channelAdminLogEventActionStartGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-610299584,"predicate":"channelAdminLogEventActionDiscardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"ChannelAdminLogEventAction"},{"id":-115071790,"predicate":"channelAdminLogEventActionParticipantMute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":-431740480,"predicate":"channelAdminLogEventActionParticipantUnmute","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1456906823,"predicate":"channelAdminLogEventActionToggleGroupCallSetting","params":[{"name":"join_muted","type":"Bool"}],"type":"ChannelAdminLogEventAction"},{"id":1557846647,"predicate":"channelAdminLogEventActionParticipantJoinByInvite","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1515256996,"predicate":"channelAdminLogEventActionExportedInviteDelete","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1091179342,"predicate":"channelAdminLogEventActionExportedInviteRevoke","params":[{"name":"invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":-384910503,"predicate":"channelAdminLogEventActionExportedInviteEdit","params":[{"name":"prev_invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"}],"type":"ChannelAdminLogEventAction"},{"id":1048537159,"predicate":"channelAdminLogEventActionParticipantVolume","params":[{"name":"participant","type":"GroupCallParticipant"}],"type":"ChannelAdminLogEventAction"},{"id":1855199800,"predicate":"channelAdminLogEventActionChangeHistoryTTL","params":[{"name":"prev_value","type":"int"},{"name":"new_value","type":"int"}],"type":"ChannelAdminLogEventAction"},{"id":-26672755,"predicate":"channelAdminLogEventActionChangeTheme","params":[{"name":"prev_value","type":"string"},{"name":"new_value","type":"string"}],"type":"ChannelAdminLogEventAction"},{"id":531458253,"predicate":"channelAdminLogEvent","params":[{"name":"id","type":"long"},{"name":"date","type":"int"},{"name":"user_id","type":"long"},{"name":"action","type":"ChannelAdminLogEventAction"}],"type":"ChannelAdminLogEvent"},{"id":-309659827,"predicate":"channels.adminLogResults","params":[{"name":"events","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"channels.AdminLogResults"},{"id":-368018716,"predicate":"channelAdminLogEventsFilter","params":[{"name":"flags","type":"#"},{"name":"join","type":"flags.0?true"},{"name":"leave","type":"flags.1?true"},{"name":"invite","type":"flags.2?true"},{"name":"ban","type":"flags.3?true"},{"name":"unban","type":"flags.4?true"},{"name":"kick","type":"flags.5?true"},{"name":"unkick","type":"flags.6?true"},{"name":"promote","type":"flags.7?true"},{"name":"demote","type":"flags.8?true"},{"name":"info","type":"flags.9?true"},{"name":"settings","type":"flags.10?true"},{"name":"pinned","type":"flags.11?true"},{"name":"edit","type":"flags.12?true"},{"name":"delete","type":"flags.13?true"},{"name":"group_call","type":"flags.14?true"},{"name":"invites","type":"flags.15?true"}],"type":"ChannelAdminLogEventsFilter"},{"id":1558266229,"predicate":"popularContact","params":[{"name":"client_id","type":"long"},{"name":"importers","type":"int"}],"type":"PopularContact"},{"id":-1634752813,"predicate":"messages.favedStickersNotModified","params":[],"type":"messages.FavedStickers"},{"id":750063767,"predicate":"messages.favedStickers","params":[{"name":"hash","type":"long"},{"name":"packs","type":"Vector"},{"name":"stickers","type":"Vector"}],"type":"messages.FavedStickers"},{"id":1189204285,"predicate":"recentMeUrlUnknown","params":[{"name":"url","type":"string"}],"type":"RecentMeUrl"},{"id":-1188296222,"predicate":"recentMeUrlUser","params":[{"name":"url","type":"string"},{"name":"user_id","type":"long"}],"type":"RecentMeUrl"},{"id":-1294306862,"predicate":"recentMeUrlChat","params":[{"name":"url","type":"string"},{"name":"chat_id","type":"long"}],"type":"RecentMeUrl"},{"id":-347535331,"predicate":"recentMeUrlChatInvite","params":[{"name":"url","type":"string"},{"name":"chat_invite","type":"ChatInvite"}],"type":"RecentMeUrl"},{"id":-1140172836,"predicate":"recentMeUrlStickerSet","params":[{"name":"url","type":"string"},{"name":"set","type":"StickerSetCovered"}],"type":"RecentMeUrl"},{"id":235081943,"predicate":"help.recentMeUrls","params":[{"name":"urls","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"help.RecentMeUrls"},{"id":482797855,"predicate":"inputSingleMedia","params":[{"name":"flags","type":"#"},{"name":"media","type":"InputMedia"},{"name":"random_id","type":"long"},{"name":"message","type":"string"},{"name":"entities","type":"flags.0?Vector"}],"type":"InputSingleMedia"},{"id":-1493633966,"predicate":"webAuthorization","params":[{"name":"hash","type":"long"},{"name":"bot_id","type":"long"},{"name":"domain","type":"string"},{"name":"browser","type":"string"},{"name":"platform","type":"string"},{"name":"date_created","type":"int"},{"name":"date_active","type":"int"},{"name":"ip","type":"string"},{"name":"region","type":"string"}],"type":"WebAuthorization"},{"id":-313079300,"predicate":"account.webAuthorizations","params":[{"name":"authorizations","type":"Vector"},{"name":"users","type":"Vector"}],"type":"account.WebAuthorizations"},{"id":-1502174430,"predicate":"inputMessageID","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-1160215659,"predicate":"inputMessageReplyTo","params":[{"name":"id","type":"int"}],"type":"InputMessage"},{"id":-2037963464,"predicate":"inputMessagePinned","params":[],"type":"InputMessage"},{"id":-1392895362,"predicate":"inputMessageCallbackQuery","params":[{"name":"id","type":"int"},{"name":"query_id","type":"long"}],"type":"InputMessage"},{"id":-55902537,"predicate":"inputDialogPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"InputDialogPeer"},{"id":1684014375,"predicate":"inputDialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"InputDialogPeer"},{"id":-445792507,"predicate":"dialogPeer","params":[{"name":"peer","type":"Peer"}],"type":"DialogPeer"},{"id":1363483106,"predicate":"dialogPeerFolder","params":[{"name":"folder_id","type":"int"}],"type":"DialogPeer"},{"id":223655517,"predicate":"messages.foundStickerSetsNotModified","params":[],"type":"messages.FoundStickerSets"},{"id":-1963942446,"predicate":"messages.foundStickerSets","params":[{"name":"hash","type":"long"},{"name":"sets","type":"Vector"}],"type":"messages.FoundStickerSets"},{"id":1648543603,"predicate":"fileHash","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"bytes"}],"type":"FileHash"},{"id":1968737087,"predicate":"inputClientProxy","params":[{"name":"address","type":"string"},{"name":"port","type":"int"}],"type":"InputClientProxy"},{"id":-483352705,"predicate":"help.termsOfServiceUpdateEmpty","params":[{"name":"expires","type":"int"}],"type":"help.TermsOfServiceUpdate"},{"id":686618977,"predicate":"help.termsOfServiceUpdate","params":[{"name":"expires","type":"int"},{"name":"terms_of_service","type":"help.TermsOfService"}],"type":"help.TermsOfServiceUpdate"},{"id":859091184,"predicate":"inputSecureFileUploaded","params":[{"name":"id","type":"long"},{"name":"parts","type":"int"},{"name":"md5_checksum","type":"string"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"InputSecureFile"},{"id":1399317950,"predicate":"inputSecureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputSecureFile"},{"id":1679398724,"predicate":"secureFileEmpty","params":[],"type":"SecureFile"},{"id":-534283678,"predicate":"secureFile","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"size","type":"int"},{"name":"dc_id","type":"int"},{"name":"date","type":"int"},{"name":"file_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureFile"},{"id":-1964327229,"predicate":"secureData","params":[{"name":"data","type":"bytes"},{"name":"data_hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureData"},{"id":2103482845,"predicate":"securePlainPhone","params":[{"name":"phone","type":"string"}],"type":"SecurePlainData"},{"id":569137759,"predicate":"securePlainEmail","params":[{"name":"email","type":"string"}],"type":"SecurePlainData"},{"id":-1658158621,"predicate":"secureValueTypePersonalDetails","params":[],"type":"SecureValueType"},{"id":1034709504,"predicate":"secureValueTypePassport","params":[],"type":"SecureValueType"},{"id":115615172,"predicate":"secureValueTypeDriverLicense","params":[],"type":"SecureValueType"},{"id":-1596951477,"predicate":"secureValueTypeIdentityCard","params":[],"type":"SecureValueType"},{"id":-1717268701,"predicate":"secureValueTypeInternalPassport","params":[],"type":"SecureValueType"},{"id":-874308058,"predicate":"secureValueTypeAddress","params":[],"type":"SecureValueType"},{"id":-63531698,"predicate":"secureValueTypeUtilityBill","params":[],"type":"SecureValueType"},{"id":-1995211763,"predicate":"secureValueTypeBankStatement","params":[],"type":"SecureValueType"},{"id":-1954007928,"predicate":"secureValueTypeRentalAgreement","params":[],"type":"SecureValueType"},{"id":-1713143702,"predicate":"secureValueTypePassportRegistration","params":[],"type":"SecureValueType"},{"id":-368907213,"predicate":"secureValueTypeTemporaryRegistration","params":[],"type":"SecureValueType"},{"id":-1289704741,"predicate":"secureValueTypePhone","params":[],"type":"SecureValueType"},{"id":-1908627474,"predicate":"secureValueTypeEmail","params":[],"type":"SecureValueType"},{"id":411017418,"predicate":"secureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?SecureFile"},{"name":"reverse_side","type":"flags.2?SecureFile"},{"name":"selfie","type":"flags.3?SecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"},{"name":"hash","type":"bytes"}],"type":"SecureValue"},{"id":-618540889,"predicate":"inputSecureValue","params":[{"name":"flags","type":"#"},{"name":"type","type":"SecureValueType"},{"name":"data","type":"flags.0?SecureData"},{"name":"front_side","type":"flags.1?InputSecureFile"},{"name":"reverse_side","type":"flags.2?InputSecureFile"},{"name":"selfie","type":"flags.3?InputSecureFile"},{"name":"translation","type":"flags.6?Vector"},{"name":"files","type":"flags.4?Vector"},{"name":"plain_data","type":"flags.5?SecurePlainData"}],"type":"InputSecureValue"},{"id":-316748368,"predicate":"secureValueHash","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"}],"type":"SecureValueHash"},{"id":-391902247,"predicate":"secureValueErrorData","params":[{"name":"type","type":"SecureValueType"},{"name":"data_hash","type":"bytes"},{"name":"field","type":"string"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":12467706,"predicate":"secureValueErrorFrontSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2037765467,"predicate":"secureValueErrorReverseSide","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-449327402,"predicate":"secureValueErrorSelfie","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":2054162547,"predicate":"secureValueErrorFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":1717706985,"predicate":"secureValueErrorFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-2036501105,"predicate":"secureValueError","params":[{"name":"type","type":"SecureValueType"},{"name":"hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":-1592506512,"predicate":"secureValueErrorTranslationFile","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"bytes"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":878931416,"predicate":"secureValueErrorTranslationFiles","params":[{"name":"type","type":"SecureValueType"},{"name":"file_hash","type":"Vector"},{"name":"text","type":"string"}],"type":"SecureValueError"},{"id":871426631,"predicate":"secureCredentialsEncrypted","params":[{"name":"data","type":"bytes"},{"name":"hash","type":"bytes"},{"name":"secret","type":"bytes"}],"type":"SecureCredentialsEncrypted"},{"id":-1389486888,"predicate":"account.authorizationForm","params":[{"name":"flags","type":"#"},{"name":"required_types","type":"Vector"},{"name":"values","type":"Vector"},{"name":"errors","type":"Vector"},{"name":"users","type":"Vector"},{"name":"privacy_policy_url","type":"flags.0?string"}],"type":"account.AuthorizationForm"},{"id":-2128640689,"predicate":"account.sentEmailCode","params":[{"name":"email_pattern","type":"string"},{"name":"length","type":"int"}],"type":"account.SentEmailCode"},{"id":1722786150,"predicate":"help.deepLinkInfoEmpty","params":[],"type":"help.DeepLinkInfo"},{"id":1783556146,"predicate":"help.deepLinkInfo","params":[{"name":"flags","type":"#"},{"name":"update_app","type":"flags.0?true"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"help.DeepLinkInfo"},{"id":289586518,"predicate":"savedPhoneContact","params":[{"name":"phone","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"date","type":"int"}],"type":"SavedContact"},{"id":1304052993,"predicate":"account.takeout","params":[{"name":"id","type":"long"}],"type":"account.Takeout"},{"id":-732254058,"predicate":"passwordKdfAlgoUnknown","params":[],"type":"PasswordKdfAlgo"},{"id":982592842,"predicate":"passwordKdfAlgoSHA256SHA256PBKDF2HMACSHA512iter100000SHA256ModPow","params":[{"name":"salt1","type":"bytes"},{"name":"salt2","type":"bytes"},{"name":"g","type":"int"},{"name":"p","type":"bytes"}],"type":"PasswordKdfAlgo"},{"id":4883767,"predicate":"securePasswordKdfAlgoUnknown","params":[],"type":"SecurePasswordKdfAlgo"},{"id":-1141711456,"predicate":"securePasswordKdfAlgoPBKDF2HMACSHA512iter100000","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":-2042159726,"predicate":"securePasswordKdfAlgoSHA512","params":[{"name":"salt","type":"bytes"}],"type":"SecurePasswordKdfAlgo"},{"id":354925740,"predicate":"secureSecretSettings","params":[{"name":"secure_algo","type":"SecurePasswordKdfAlgo"},{"name":"secure_secret","type":"bytes"},{"name":"secure_secret_id","type":"long"}],"type":"SecureSecretSettings"},{"id":-1736378792,"predicate":"inputCheckPasswordEmpty","params":[],"type":"InputCheckPasswordSRP"},{"id":-763367294,"predicate":"inputCheckPasswordSRP","params":[{"name":"srp_id","type":"long"},{"name":"A","type":"bytes"},{"name":"M1","type":"bytes"}],"type":"InputCheckPasswordSRP"},{"id":-2103600678,"predicate":"secureRequiredType","params":[{"name":"flags","type":"#"},{"name":"native_names","type":"flags.0?true"},{"name":"selfie_required","type":"flags.1?true"},{"name":"translation_required","type":"flags.2?true"},{"name":"type","type":"SecureValueType"}],"type":"SecureRequiredType"},{"id":41187252,"predicate":"secureRequiredTypeOneOf","params":[{"name":"types","type":"Vector"}],"type":"SecureRequiredType"},{"id":-1078332329,"predicate":"help.passportConfigNotModified","params":[],"type":"help.PassportConfig"},{"id":-1600596305,"predicate":"help.passportConfig","params":[{"name":"hash","type":"int"},{"name":"countries_langs","type":"DataJSON"}],"type":"help.PassportConfig"},{"id":488313413,"predicate":"inputAppEvent","params":[{"name":"time","type":"double"},{"name":"type","type":"string"},{"name":"peer","type":"long"},{"name":"data","type":"JSONValue"}],"type":"InputAppEvent"},{"id":-1059185703,"predicate":"jsonObjectValue","params":[{"name":"key","type":"string"},{"name":"value","type":"JSONValue"}],"type":"JSONObjectValue"},{"id":1064139624,"predicate":"jsonNull","params":[],"type":"JSONValue"},{"id":-952869270,"predicate":"jsonBool","params":[{"name":"value","type":"Bool"}],"type":"JSONValue"},{"id":736157604,"predicate":"jsonNumber","params":[{"name":"value","type":"double"}],"type":"JSONValue"},{"id":-1222740358,"predicate":"jsonString","params":[{"name":"value","type":"string"}],"type":"JSONValue"},{"id":-146520221,"predicate":"jsonArray","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":-1715350371,"predicate":"jsonObject","params":[{"name":"value","type":"Vector"}],"type":"JSONValue"},{"id":878078826,"predicate":"pageTableCell","params":[{"name":"flags","type":"#"},{"name":"header","type":"flags.0?true"},{"name":"align_center","type":"flags.3?true"},{"name":"align_right","type":"flags.4?true"},{"name":"valign_middle","type":"flags.5?true"},{"name":"valign_bottom","type":"flags.6?true"},{"name":"text","type":"flags.7?RichText"},{"name":"colspan","type":"flags.1?int"},{"name":"rowspan","type":"flags.2?int"}],"type":"PageTableCell"},{"id":-524237339,"predicate":"pageTableRow","params":[{"name":"cells","type":"Vector"}],"type":"PageTableRow"},{"id":1869903447,"predicate":"pageCaption","params":[{"name":"text","type":"RichText"},{"name":"credit","type":"RichText"}],"type":"PageCaption"},{"id":-1188055347,"predicate":"pageListItemText","params":[{"name":"text","type":"RichText"}],"type":"PageListItem"},{"id":635466748,"predicate":"pageListItemBlocks","params":[{"name":"blocks","type":"Vector"}],"type":"PageListItem"},{"id":1577484359,"predicate":"pageListOrderedItemText","params":[{"name":"num","type":"string"},{"name":"text","type":"RichText"}],"type":"PageListOrderedItem"},{"id":-1730311882,"predicate":"pageListOrderedItemBlocks","params":[{"name":"num","type":"string"},{"name":"blocks","type":"Vector"}],"type":"PageListOrderedItem"},{"id":-1282352120,"predicate":"pageRelatedArticle","params":[{"name":"flags","type":"#"},{"name":"url","type":"string"},{"name":"webpage_id","type":"long"},{"name":"title","type":"flags.0?string"},{"name":"description","type":"flags.1?string"},{"name":"photo_id","type":"flags.2?long"},{"name":"author","type":"flags.3?string"},{"name":"published_date","type":"flags.4?int"}],"type":"PageRelatedArticle"},{"id":-1738178803,"predicate":"page","params":[{"name":"flags","type":"#"},{"name":"part","type":"flags.0?true"},{"name":"rtl","type":"flags.1?true"},{"name":"v2","type":"flags.2?true"},{"name":"url","type":"string"},{"name":"blocks","type":"Vector"},{"name":"photos","type":"Vector"},{"name":"documents","type":"Vector"},{"name":"views","type":"flags.3?int"}],"type":"Page"},{"id":-1945767479,"predicate":"help.supportName","params":[{"name":"name","type":"string"}],"type":"help.SupportName"},{"id":-206688531,"predicate":"help.userInfoEmpty","params":[],"type":"help.UserInfo"},{"id":32192344,"predicate":"help.userInfo","params":[{"name":"message","type":"string"},{"name":"entities","type":"Vector"},{"name":"author","type":"string"},{"name":"date","type":"int"}],"type":"help.UserInfo"},{"id":1823064809,"predicate":"pollAnswer","params":[{"name":"text","type":"string"},{"name":"option","type":"bytes"}],"type":"PollAnswer"},{"id":-2032041631,"predicate":"poll","params":[{"name":"id","type":"long"},{"name":"flags","type":"#"},{"name":"closed","type":"flags.0?true"},{"name":"public_voters","type":"flags.1?true"},{"name":"multiple_choice","type":"flags.2?true"},{"name":"quiz","type":"flags.3?true"},{"name":"question","type":"string"},{"name":"answers","type":"Vector"},{"name":"close_period","type":"flags.4?int"},{"name":"close_date","type":"flags.5?int"}],"type":"Poll"},{"id":997055186,"predicate":"pollAnswerVoters","params":[{"name":"flags","type":"#"},{"name":"chosen","type":"flags.0?true"},{"name":"correct","type":"flags.1?true"},{"name":"option","type":"bytes"},{"name":"voters","type":"int"}],"type":"PollAnswerVoters"},{"id":-591909213,"predicate":"pollResults","params":[{"name":"flags","type":"#"},{"name":"min","type":"flags.0?true"},{"name":"results","type":"flags.1?Vector"},{"name":"total_voters","type":"flags.2?int"},{"name":"recent_voters","type":"flags.3?Vector"},{"name":"solution","type":"flags.4?string"},{"name":"solution_entities","type":"flags.4?Vector"}],"type":"PollResults"},{"id":-264117680,"predicate":"chatOnlines","params":[{"name":"onlines","type":"int"}],"type":"ChatOnlines"},{"id":1202287072,"predicate":"statsURL","params":[{"name":"url","type":"string"}],"type":"StatsURL"},{"id":1605510357,"predicate":"chatAdminRights","params":[{"name":"flags","type":"#"},{"name":"change_info","type":"flags.0?true"},{"name":"post_messages","type":"flags.1?true"},{"name":"edit_messages","type":"flags.2?true"},{"name":"delete_messages","type":"flags.3?true"},{"name":"ban_users","type":"flags.4?true"},{"name":"invite_users","type":"flags.5?true"},{"name":"pin_messages","type":"flags.7?true"},{"name":"add_admins","type":"flags.9?true"},{"name":"anonymous","type":"flags.10?true"},{"name":"manage_call","type":"flags.11?true"},{"name":"other","type":"flags.12?true"}],"type":"ChatAdminRights"},{"id":-1626209256,"predicate":"chatBannedRights","params":[{"name":"flags","type":"#"},{"name":"view_messages","type":"flags.0?true"},{"name":"send_messages","type":"flags.1?true"},{"name":"send_media","type":"flags.2?true"},{"name":"send_stickers","type":"flags.3?true"},{"name":"send_gifs","type":"flags.4?true"},{"name":"send_games","type":"flags.5?true"},{"name":"send_inline","type":"flags.6?true"},{"name":"embed_links","type":"flags.7?true"},{"name":"send_polls","type":"flags.8?true"},{"name":"change_info","type":"flags.10?true"},{"name":"invite_users","type":"flags.15?true"},{"name":"pin_messages","type":"flags.17?true"},{"name":"until_date","type":"int"}],"type":"ChatBannedRights"},{"id":-433014407,"predicate":"inputWallPaper","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputWallPaper"},{"id":1913199744,"predicate":"inputWallPaperSlug","params":[{"name":"slug","type":"string"}],"type":"InputWallPaper"},{"id":-1770371538,"predicate":"inputWallPaperNoFile","params":[{"name":"id","type":"long"}],"type":"InputWallPaper"},{"id":471437699,"predicate":"account.wallPapersNotModified","params":[],"type":"account.WallPapers"},{"id":-842824308,"predicate":"account.wallPapers","params":[{"name":"hash","type":"long"},{"name":"wallpapers","type":"Vector"}],"type":"account.WallPapers"},{"id":-557924733,"predicate":"codeSettings","params":[{"name":"flags","type":"#"},{"name":"allow_flashcall","type":"flags.0?true"},{"name":"current_number","type":"flags.1?true"},{"name":"allow_app_hash","type":"flags.4?true"}],"type":"CodeSettings"},{"id":499236004,"predicate":"wallPaperSettings","params":[{"name":"flags","type":"#"},{"name":"blur","type":"flags.1?true"},{"name":"motion","type":"flags.2?true"},{"name":"background_color","type":"flags.0?int"},{"name":"second_background_color","type":"flags.4?int"},{"name":"third_background_color","type":"flags.5?int"},{"name":"fourth_background_color","type":"flags.6?int"},{"name":"intensity","type":"flags.3?int"},{"name":"rotation","type":"flags.4?int"}],"type":"WallPaperSettings"},{"id":-532532493,"predicate":"autoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"disabled","type":"flags.0?true"},{"name":"video_preload_large","type":"flags.1?true"},{"name":"audio_preload_next","type":"flags.2?true"},{"name":"phonecalls_less_data","type":"flags.3?true"},{"name":"photo_size_max","type":"int"},{"name":"video_size_max","type":"int"},{"name":"file_size_max","type":"int"},{"name":"video_upload_maxbitrate","type":"int"}],"type":"AutoDownloadSettings"},{"id":1674235686,"predicate":"account.autoDownloadSettings","params":[{"name":"low","type":"AutoDownloadSettings"},{"name":"medium","type":"AutoDownloadSettings"},{"name":"high","type":"AutoDownloadSettings"}],"type":"account.AutoDownloadSettings"},{"id":-709641735,"predicate":"emojiKeyword","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":594408994,"predicate":"emojiKeywordDeleted","params":[{"name":"keyword","type":"string"},{"name":"emoticons","type":"Vector"}],"type":"EmojiKeyword"},{"id":1556570557,"predicate":"emojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"},{"name":"version","type":"int"},{"name":"keywords","type":"Vector"}],"type":"EmojiKeywordsDifference"},{"id":-1519029347,"predicate":"emojiURL","params":[{"name":"url","type":"string"}],"type":"EmojiURL"},{"id":-1275374751,"predicate":"emojiLanguage","params":[{"name":"lang_code","type":"string"}],"type":"EmojiLanguage"},{"id":-11252123,"predicate":"folder","params":[{"name":"flags","type":"#"},{"name":"autofill_new_broadcasts","type":"flags.0?true"},{"name":"autofill_public_groups","type":"flags.1?true"},{"name":"autofill_new_correspondents","type":"flags.2?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"photo","type":"flags.3?ChatPhoto"}],"type":"Folder"},{"id":-70073706,"predicate":"inputFolderPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"folder_id","type":"int"}],"type":"InputFolderPeer"},{"id":-373643672,"predicate":"folderPeer","params":[{"name":"peer","type":"Peer"},{"name":"folder_id","type":"int"}],"type":"FolderPeer"},{"id":-398136321,"predicate":"messages.searchCounter","params":[{"name":"flags","type":"#"},{"name":"inexact","type":"flags.1?true"},{"name":"filter","type":"MessagesFilter"},{"name":"count","type":"int"}],"type":"messages.SearchCounter"},{"id":-1831650802,"predicate":"urlAuthResultRequest","params":[{"name":"flags","type":"#"},{"name":"request_write_access","type":"flags.0?true"},{"name":"bot","type":"User"},{"name":"domain","type":"string"}],"type":"UrlAuthResult"},{"id":-1886646706,"predicate":"urlAuthResultAccepted","params":[{"name":"url","type":"string"}],"type":"UrlAuthResult"},{"id":-1445536993,"predicate":"urlAuthResultDefault","params":[],"type":"UrlAuthResult"},{"id":-1078612597,"predicate":"channelLocationEmpty","params":[],"type":"ChannelLocation"},{"id":547062491,"predicate":"channelLocation","params":[{"name":"geo_point","type":"GeoPoint"},{"name":"address","type":"string"}],"type":"ChannelLocation"},{"id":-901375139,"predicate":"peerLocated","params":[{"name":"peer","type":"Peer"},{"name":"expires","type":"int"},{"name":"distance","type":"int"}],"type":"PeerLocated"},{"id":-118740917,"predicate":"peerSelfLocated","params":[{"name":"expires","type":"int"}],"type":"PeerLocated"},{"id":-797791052,"predicate":"restrictionReason","params":[{"name":"platform","type":"string"},{"name":"reason","type":"string"},{"name":"text","type":"string"}],"type":"RestrictionReason"},{"id":1012306921,"predicate":"inputTheme","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputTheme"},{"id":-175567375,"predicate":"inputThemeSlug","params":[{"name":"slug","type":"string"}],"type":"InputTheme"},{"id":-402474788,"predicate":"theme","params":[{"name":"flags","type":"#"},{"name":"creator","type":"flags.0?true"},{"name":"default","type":"flags.1?true"},{"name":"for_chat","type":"flags.5?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?Document"},{"name":"settings","type":"flags.3?ThemeSettings"},{"name":"installs_count","type":"flags.4?int"}],"type":"Theme"},{"id":-199313886,"predicate":"account.themesNotModified","params":[],"type":"account.Themes"},{"id":-1707242387,"predicate":"account.themes","params":[{"name":"hash","type":"long"},{"name":"themes","type":"Vector"}],"type":"account.Themes"},{"id":1654593920,"predicate":"auth.loginToken","params":[{"name":"expires","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":110008598,"predicate":"auth.loginTokenMigrateTo","params":[{"name":"dc_id","type":"int"},{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":957176926,"predicate":"auth.loginTokenSuccess","params":[{"name":"authorization","type":"auth.Authorization"}],"type":"auth.LoginToken"},{"id":1474462241,"predicate":"account.contentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"},{"name":"sensitive_can_change","type":"flags.1?true"}],"type":"account.ContentSettings"},{"id":-1456996667,"predicate":"messages.inactiveChats","params":[{"name":"dates","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.InactiveChats"},{"id":-1012849566,"predicate":"baseThemeClassic","params":[],"type":"BaseTheme"},{"id":-69724536,"predicate":"baseThemeDay","params":[],"type":"BaseTheme"},{"id":-1212997976,"predicate":"baseThemeNight","params":[],"type":"BaseTheme"},{"id":1834973166,"predicate":"baseThemeTinted","params":[],"type":"BaseTheme"},{"id":1527845466,"predicate":"baseThemeArctic","params":[],"type":"BaseTheme"},{"id":-1881255857,"predicate":"inputThemeSettings","params":[{"name":"flags","type":"#"},{"name":"message_colors_animated","type":"flags.2?true"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"outbox_accent_color","type":"flags.3?int"},{"name":"message_colors","type":"flags.0?Vector"},{"name":"wallpaper","type":"flags.1?InputWallPaper"},{"name":"wallpaper_settings","type":"flags.1?WallPaperSettings"}],"type":"InputThemeSettings"},{"id":-94849324,"predicate":"themeSettings","params":[{"name":"flags","type":"#"},{"name":"message_colors_animated","type":"flags.2?true"},{"name":"base_theme","type":"BaseTheme"},{"name":"accent_color","type":"int"},{"name":"outbox_accent_color","type":"flags.3?int"},{"name":"message_colors","type":"flags.0?Vector"},{"name":"wallpaper","type":"flags.1?WallPaper"}],"type":"ThemeSettings"},{"id":1421174295,"predicate":"webPageAttributeTheme","params":[{"name":"flags","type":"#"},{"name":"documents","type":"flags.0?Vector"},{"name":"settings","type":"flags.1?ThemeSettings"}],"type":"WebPageAttribute"},{"id":886196148,"predicate":"messageUserVote","params":[{"name":"user_id","type":"long"},{"name":"option","type":"bytes"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":1017491692,"predicate":"messageUserVoteInputOption","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":-1973033641,"predicate":"messageUserVoteMultiple","params":[{"name":"user_id","type":"long"},{"name":"options","type":"Vector"},{"name":"date","type":"int"}],"type":"MessageUserVote"},{"id":136574537,"predicate":"messages.votesList","params":[{"name":"flags","type":"#"},{"name":"count","type":"int"},{"name":"votes","type":"Vector"},{"name":"users","type":"Vector"},{"name":"next_offset","type":"flags.0?string"}],"type":"messages.VotesList"},{"id":-177732982,"predicate":"bankCardOpenUrl","params":[{"name":"url","type":"string"},{"name":"name","type":"string"}],"type":"BankCardOpenUrl"},{"id":1042605427,"predicate":"payments.bankCardData","params":[{"name":"title","type":"string"},{"name":"open_urls","type":"Vector"}],"type":"payments.BankCardData"},{"id":1949890536,"predicate":"dialogFilter","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"non_contacts","type":"flags.1?true"},{"name":"groups","type":"flags.2?true"},{"name":"broadcasts","type":"flags.3?true"},{"name":"bots","type":"flags.4?true"},{"name":"exclude_muted","type":"flags.11?true"},{"name":"exclude_read","type":"flags.12?true"},{"name":"exclude_archived","type":"flags.13?true"},{"name":"id","type":"int"},{"name":"title","type":"string"},{"name":"emoticon","type":"flags.25?string"},{"name":"pinned_peers","type":"Vector"},{"name":"include_peers","type":"Vector"},{"name":"exclude_peers","type":"Vector"}],"type":"DialogFilter"},{"id":2004110666,"predicate":"dialogFilterSuggested","params":[{"name":"filter","type":"DialogFilter"},{"name":"description","type":"string"}],"type":"DialogFilterSuggested"},{"id":-1237848657,"predicate":"statsDateRangeDays","params":[{"name":"min_date","type":"int"},{"name":"max_date","type":"int"}],"type":"StatsDateRangeDays"},{"id":-884757282,"predicate":"statsAbsValueAndPrev","params":[{"name":"current","type":"double"},{"name":"previous","type":"double"}],"type":"StatsAbsValueAndPrev"},{"id":-875679776,"predicate":"statsPercentValue","params":[{"name":"part","type":"double"},{"name":"total","type":"double"}],"type":"StatsPercentValue"},{"id":1244130093,"predicate":"statsGraphAsync","params":[{"name":"token","type":"string"}],"type":"StatsGraph"},{"id":-1092839390,"predicate":"statsGraphError","params":[{"name":"error","type":"string"}],"type":"StatsGraph"},{"id":-1901828938,"predicate":"statsGraph","params":[{"name":"flags","type":"#"},{"name":"json","type":"DataJSON"},{"name":"zoom_token","type":"flags.0?string"}],"type":"StatsGraph"},{"id":-1387279939,"predicate":"messageInteractionCounters","params":[{"name":"msg_id","type":"int"},{"name":"views","type":"int"},{"name":"forwards","type":"int"}],"type":"MessageInteractionCounters"},{"id":-1107852396,"predicate":"stats.broadcastStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"followers","type":"StatsAbsValueAndPrev"},{"name":"views_per_post","type":"StatsAbsValueAndPrev"},{"name":"shares_per_post","type":"StatsAbsValueAndPrev"},{"name":"enabled_notifications","type":"StatsPercentValue"},{"name":"growth_graph","type":"StatsGraph"},{"name":"followers_graph","type":"StatsGraph"},{"name":"mute_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"interactions_graph","type":"StatsGraph"},{"name":"iv_interactions_graph","type":"StatsGraph"},{"name":"views_by_source_graph","type":"StatsGraph"},{"name":"new_followers_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"recent_message_interactions","type":"Vector"}],"type":"stats.BroadcastStats"},{"id":-1728664459,"predicate":"help.promoDataEmpty","params":[{"name":"expires","type":"int"}],"type":"help.PromoData"},{"id":-1942390465,"predicate":"help.promoData","params":[{"name":"flags","type":"#"},{"name":"proxy","type":"flags.0?true"},{"name":"expires","type":"int"},{"name":"peer","type":"Peer"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"psa_type","type":"flags.1?string"},{"name":"psa_message","type":"flags.2?string"}],"type":"help.PromoData"},{"id":-567037804,"predicate":"videoSize","params":[{"name":"flags","type":"#"},{"name":"type","type":"string"},{"name":"w","type":"int"},{"name":"h","type":"int"},{"name":"size","type":"int"},{"name":"video_start_ts","type":"flags.0?double"}],"type":"VideoSize"},{"id":-1660637285,"predicate":"statsGroupTopPoster","params":[{"name":"user_id","type":"long"},{"name":"messages","type":"int"},{"name":"avg_chars","type":"int"}],"type":"StatsGroupTopPoster"},{"id":-682079097,"predicate":"statsGroupTopAdmin","params":[{"name":"user_id","type":"long"},{"name":"deleted","type":"int"},{"name":"kicked","type":"int"},{"name":"banned","type":"int"}],"type":"StatsGroupTopAdmin"},{"id":1398765469,"predicate":"statsGroupTopInviter","params":[{"name":"user_id","type":"long"},{"name":"invitations","type":"int"}],"type":"StatsGroupTopInviter"},{"id":-276825834,"predicate":"stats.megagroupStats","params":[{"name":"period","type":"StatsDateRangeDays"},{"name":"members","type":"StatsAbsValueAndPrev"},{"name":"messages","type":"StatsAbsValueAndPrev"},{"name":"viewers","type":"StatsAbsValueAndPrev"},{"name":"posters","type":"StatsAbsValueAndPrev"},{"name":"growth_graph","type":"StatsGraph"},{"name":"members_graph","type":"StatsGraph"},{"name":"new_members_by_source_graph","type":"StatsGraph"},{"name":"languages_graph","type":"StatsGraph"},{"name":"messages_graph","type":"StatsGraph"},{"name":"actions_graph","type":"StatsGraph"},{"name":"top_hours_graph","type":"StatsGraph"},{"name":"weekdays_graph","type":"StatsGraph"},{"name":"top_posters","type":"Vector"},{"name":"top_admins","type":"Vector"},{"name":"top_inviters","type":"Vector"},{"name":"users","type":"Vector"}],"type":"stats.MegagroupStats"},{"id":-1096616924,"predicate":"globalPrivacySettings","params":[{"name":"flags","type":"#"},{"name":"archive_and_mute_new_noncontact_peers","type":"flags.0?Bool"}],"type":"GlobalPrivacySettings"},{"id":1107543535,"predicate":"help.countryCode","params":[{"name":"flags","type":"#"},{"name":"country_code","type":"string"},{"name":"prefixes","type":"flags.0?Vector"},{"name":"patterns","type":"flags.1?Vector"}],"type":"help.CountryCode"},{"id":-1014526429,"predicate":"help.country","params":[{"name":"flags","type":"#"},{"name":"hidden","type":"flags.0?true"},{"name":"iso2","type":"string"},{"name":"default_name","type":"string"},{"name":"name","type":"flags.1?string"},{"name":"country_codes","type":"Vector"}],"type":"help.Country"},{"id":-1815339214,"predicate":"help.countriesListNotModified","params":[],"type":"help.CountriesList"},{"id":-2016381538,"predicate":"help.countriesList","params":[{"name":"countries","type":"Vector"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":1163625789,"predicate":"messageViews","params":[{"name":"flags","type":"#"},{"name":"views","type":"flags.0?int"},{"name":"forwards","type":"flags.1?int"},{"name":"replies","type":"flags.2?MessageReplies"}],"type":"MessageViews"},{"id":-1228606141,"predicate":"messages.messageViews","params":[{"name":"views","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.MessageViews"},{"id":-1506535550,"predicate":"messages.discussionMessage","params":[{"name":"flags","type":"#"},{"name":"messages","type":"Vector"},{"name":"max_id","type":"flags.0?int"},{"name":"read_inbox_max_id","type":"flags.1?int"},{"name":"read_outbox_max_id","type":"flags.2?int"},{"name":"unread_count","type":"int"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.DiscussionMessage"},{"id":-1495959709,"predicate":"messageReplyHeader","params":[{"name":"flags","type":"#"},{"name":"reply_to_msg_id","type":"int"},{"name":"reply_to_peer_id","type":"flags.0?Peer"},{"name":"reply_to_top_id","type":"flags.1?int"}],"type":"MessageReplyHeader"},{"id":-2083123262,"predicate":"messageReplies","params":[{"name":"flags","type":"#"},{"name":"comments","type":"flags.0?true"},{"name":"replies","type":"int"},{"name":"replies_pts","type":"int"},{"name":"recent_repliers","type":"flags.1?Vector"},{"name":"channel_id","type":"flags.0?long"},{"name":"max_id","type":"flags.2?int"},{"name":"read_max_id","type":"flags.3?int"}],"type":"MessageReplies"},{"id":-386039788,"predicate":"peerBlocked","params":[{"name":"peer_id","type":"Peer"},{"name":"date","type":"int"}],"type":"PeerBlocked"},{"id":-1986399595,"predicate":"stats.messageStats","params":[{"name":"views_graph","type":"StatsGraph"}],"type":"stats.MessageStats"},{"id":2004925620,"predicate":"groupCallDiscarded","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"duration","type":"int"}],"type":"GroupCall"},{"id":-711498484,"predicate":"groupCall","params":[{"name":"flags","type":"#"},{"name":"join_muted","type":"flags.1?true"},{"name":"can_change_join_muted","type":"flags.2?true"},{"name":"join_date_asc","type":"flags.6?true"},{"name":"schedule_start_subscribed","type":"flags.8?true"},{"name":"can_start_video","type":"flags.9?true"},{"name":"record_video_active","type":"flags.11?true"},{"name":"id","type":"long"},{"name":"access_hash","type":"long"},{"name":"participants_count","type":"int"},{"name":"title","type":"flags.3?string"},{"name":"stream_dc_id","type":"flags.4?int"},{"name":"record_start_date","type":"flags.5?int"},{"name":"schedule_date","type":"flags.7?int"},{"name":"unmuted_video_count","type":"flags.10?int"},{"name":"unmuted_video_limit","type":"int"},{"name":"version","type":"int"}],"type":"GroupCall"},{"id":-659913713,"predicate":"inputGroupCall","params":[{"name":"id","type":"long"},{"name":"access_hash","type":"long"}],"type":"InputGroupCall"},{"id":-341428482,"predicate":"groupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"left","type":"flags.1?true"},{"name":"can_self_unmute","type":"flags.2?true"},{"name":"just_joined","type":"flags.4?true"},{"name":"versioned","type":"flags.5?true"},{"name":"min","type":"flags.8?true"},{"name":"muted_by_you","type":"flags.9?true"},{"name":"volume_by_admin","type":"flags.10?true"},{"name":"self","type":"flags.12?true"},{"name":"video_joined","type":"flags.15?true"},{"name":"peer","type":"Peer"},{"name":"date","type":"int"},{"name":"active_date","type":"flags.3?int"},{"name":"source","type":"int"},{"name":"volume","type":"flags.7?int"},{"name":"about","type":"flags.11?string"},{"name":"raise_hand_rating","type":"flags.13?long"},{"name":"video","type":"flags.6?GroupCallParticipantVideo"},{"name":"presentation","type":"flags.14?GroupCallParticipantVideo"}],"type":"GroupCallParticipant"},{"id":-1636664659,"predicate":"phone.groupCall","params":[{"name":"call","type":"GroupCall"},{"name":"participants","type":"Vector"},{"name":"participants_next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.GroupCall"},{"id":-193506890,"predicate":"phone.groupParticipants","params":[{"name":"count","type":"int"},{"name":"participants","type":"Vector"},{"name":"next_offset","type":"string"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"},{"name":"version","type":"int"}],"type":"phone.GroupParticipants"},{"id":813821341,"predicate":"inlineQueryPeerTypeSameBotPM","params":[],"type":"InlineQueryPeerType"},{"id":-2093215828,"predicate":"inlineQueryPeerTypePM","params":[],"type":"InlineQueryPeerType"},{"id":-681130742,"predicate":"inlineQueryPeerTypeChat","params":[],"type":"InlineQueryPeerType"},{"id":1589952067,"predicate":"inlineQueryPeerTypeMegagroup","params":[],"type":"InlineQueryPeerType"},{"id":1664413338,"predicate":"inlineQueryPeerTypeBroadcast","params":[],"type":"InlineQueryPeerType"},{"id":375566091,"predicate":"messages.historyImport","params":[{"name":"id","type":"long"}],"type":"messages.HistoryImport"},{"id":1578088377,"predicate":"messages.historyImportParsed","params":[{"name":"flags","type":"#"},{"name":"pm","type":"flags.0?true"},{"name":"group","type":"flags.1?true"},{"name":"title","type":"flags.2?string"}],"type":"messages.HistoryImportParsed"},{"id":-275956116,"predicate":"messages.affectedFoundMessages","params":[{"name":"pts","type":"int"},{"name":"pts_count","type":"int"},{"name":"offset","type":"int"},{"name":"messages","type":"Vector"}],"type":"messages.AffectedFoundMessages"},{"id":190633460,"predicate":"chatInviteImporter","params":[{"name":"user_id","type":"long"},{"name":"date","type":"int"}],"type":"ChatInviteImporter"},{"id":-1111085620,"predicate":"messages.exportedChatInvites","params":[{"name":"count","type":"int"},{"name":"invites","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvites"},{"id":410107472,"predicate":"messages.exportedChatInvite","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":572915951,"predicate":"messages.exportedChatInviteReplaced","params":[{"name":"invite","type":"ExportedChatInvite"},{"name":"new_invite","type":"ExportedChatInvite"},{"name":"users","type":"Vector"}],"type":"messages.ExportedChatInvite"},{"id":-2118733814,"predicate":"messages.chatInviteImporters","params":[{"name":"count","type":"int"},{"name":"importers","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatInviteImporters"},{"id":-219353309,"predicate":"chatAdminWithInvites","params":[{"name":"admin_id","type":"long"},{"name":"invites_count","type":"int"},{"name":"revoked_invites_count","type":"int"}],"type":"ChatAdminWithInvites"},{"id":-1231326505,"predicate":"messages.chatAdminsWithInvites","params":[{"name":"admins","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.ChatAdminsWithInvites"},{"id":-1571952873,"predicate":"messages.checkedHistoryImportPeer","params":[{"name":"confirm_text","type":"string"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-1343921601,"predicate":"phone.joinAsPeers","params":[{"name":"peers","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"phone.JoinAsPeers"},{"id":541839704,"predicate":"phone.exportedGroupCallInvite","params":[{"name":"link","type":"string"}],"type":"phone.ExportedGroupCallInvite"},{"id":-592373577,"predicate":"groupCallParticipantVideoSourceGroup","params":[{"name":"semantics","type":"string"},{"name":"sources","type":"Vector"}],"type":"GroupCallParticipantVideoSourceGroup"},{"id":1735736008,"predicate":"groupCallParticipantVideo","params":[{"name":"flags","type":"#"},{"name":"paused","type":"flags.0?true"},{"name":"endpoint","type":"string"},{"name":"source_groups","type":"Vector"},{"name":"audio_source","type":"flags.1?int"}],"type":"GroupCallParticipantVideo"},{"id":-2046910401,"predicate":"stickers.suggestedShortName","params":[{"name":"short_name","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":795652779,"predicate":"botCommandScopeDefault","params":[],"type":"BotCommandScope"},{"id":1011811544,"predicate":"botCommandScopeUsers","params":[],"type":"BotCommandScope"},{"id":1877059713,"predicate":"botCommandScopeChats","params":[],"type":"BotCommandScope"},{"id":-1180016534,"predicate":"botCommandScopeChatAdmins","params":[],"type":"BotCommandScope"},{"id":-610432643,"predicate":"botCommandScopePeer","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":1071145937,"predicate":"botCommandScopePeerAdmins","params":[{"name":"peer","type":"InputPeer"}],"type":"BotCommandScope"},{"id":169026035,"predicate":"botCommandScopePeerUser","params":[{"name":"peer","type":"InputPeer"},{"name":"user_id","type":"InputUser"}],"type":"BotCommandScope"},{"id":-478701471,"predicate":"account.resetPasswordFailedWait","params":[{"name":"retry_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-370148227,"predicate":"account.resetPasswordRequestedWait","params":[{"name":"until_date","type":"int"}],"type":"account.ResetPasswordResult"},{"id":-383330754,"predicate":"account.resetPasswordOk","params":[],"type":"account.ResetPasswordResult"},{"id":-318022605,"predicate":"chatTheme","params":[{"name":"emoticon","type":"string"},{"name":"theme","type":"Theme"},{"name":"dark_theme","type":"Theme"}],"type":"ChatTheme"},{"id":-535699004,"predicate":"account.chatThemesNotModified","params":[],"type":"account.ChatThemes"},{"id":-28524867,"predicate":"account.chatThemes","params":[{"name":"hash","type":"int"},{"name":"themes","type":"Vector"}],"type":"account.ChatThemes"},{"id":708589599,"predicate":"sponsoredMessage","params":[{"name":"flags","type":"#"},{"name":"random_id","type":"bytes"},{"name":"from_id","type":"Peer"},{"name":"start_param","type":"flags.0?string"},{"name":"message","type":"string"},{"name":"entities","type":"flags.1?Vector"}],"type":"SponsoredMessage"},{"id":1705297877,"predicate":"messages.sponsoredMessages","params":[{"name":"messages","type":"Vector"},{"name":"chats","type":"Vector"},{"name":"users","type":"Vector"}],"type":"messages.SponsoredMessages"}],"methods":[{"id":-878758099,"method":"invokeAfterMsg","params":[{"name":"msg_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":1036301552,"method":"invokeAfterMsgs","params":[{"name":"msg_ids","type":"Vector"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1043505495,"method":"initConnection","params":[{"name":"flags","type":"#"},{"name":"api_id","type":"int"},{"name":"device_model","type":"string"},{"name":"system_version","type":"string"},{"name":"app_version","type":"string"},{"name":"system_lang_code","type":"string"},{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"proxy","type":"flags.0?InputClientProxy"},{"name":"params","type":"flags.1?JSONValue"},{"name":"query","type":"!X"}],"type":"X"},{"id":-627372787,"method":"invokeWithLayer","params":[{"name":"layer","type":"int"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1080796745,"method":"invokeWithoutUpdates","params":[{"name":"query","type":"!X"}],"type":"X"},{"id":911373810,"method":"invokeWithMessagesRange","params":[{"name":"range","type":"MessageRange"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1398145746,"method":"invokeWithTakeout","params":[{"name":"takeout_id","type":"long"},{"name":"query","type":"!X"}],"type":"X"},{"id":-1502141361,"method":"auth.sendCode","params":[{"name":"phone_number","type":"string"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":-2131827673,"method":"auth.signUp","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"}],"type":"auth.Authorization"},{"id":-1126886015,"method":"auth.signIn","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"auth.Authorization"},{"id":1461180992,"method":"auth.logOut","params":[],"type":"Bool"},{"id":-1616179942,"method":"auth.resetAuthorizations","params":[],"type":"Bool"},{"id":-440401971,"method":"auth.exportAuthorization","params":[{"name":"dc_id","type":"int"}],"type":"auth.ExportedAuthorization"},{"id":-1518699091,"method":"auth.importAuthorization","params":[{"name":"id","type":"long"},{"name":"bytes","type":"bytes"}],"type":"auth.Authorization"},{"id":-841733627,"method":"auth.bindTempAuthKey","params":[{"name":"perm_auth_key_id","type":"long"},{"name":"nonce","type":"long"},{"name":"expires_at","type":"int"},{"name":"encrypted_message","type":"bytes"}],"type":"Bool"},{"id":1738800940,"method":"auth.importBotAuthorization","params":[{"name":"flags","type":"int"},{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"bot_auth_token","type":"string"}],"type":"auth.Authorization"},{"id":-779399914,"method":"auth.checkPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"auth.Authorization"},{"id":-661144474,"method":"auth.requestPasswordRecovery","params":[],"type":"auth.PasswordRecovery"},{"id":923364464,"method":"auth.recoverPassword","params":[{"name":"flags","type":"#"},{"name":"code","type":"string"},{"name":"new_settings","type":"flags.0?account.PasswordInputSettings"}],"type":"auth.Authorization"},{"id":1056025023,"method":"auth.resendCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"auth.SentCode"},{"id":520357240,"method":"auth.cancelCode","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"}],"type":"Bool"},{"id":-1907842680,"method":"auth.dropTempAuthKeys","params":[{"name":"except_auth_keys","type":"Vector"}],"type":"Bool"},{"id":-1210022402,"method":"auth.exportLoginToken","params":[{"name":"api_id","type":"int"},{"name":"api_hash","type":"string"},{"name":"except_ids","type":"Vector"}],"type":"auth.LoginToken"},{"id":-1783866140,"method":"auth.importLoginToken","params":[{"name":"token","type":"bytes"}],"type":"auth.LoginToken"},{"id":-392909491,"method":"auth.acceptLoginToken","params":[{"name":"token","type":"bytes"}],"type":"Authorization"},{"id":221691769,"method":"auth.checkRecoveryPassword","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":-326762118,"method":"account.registerDevice","params":[{"name":"flags","type":"#"},{"name":"no_muted","type":"flags.0?true"},{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"app_sandbox","type":"Bool"},{"name":"secret","type":"bytes"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":1779249670,"method":"account.unregisterDevice","params":[{"name":"token_type","type":"int"},{"name":"token","type":"string"},{"name":"other_uids","type":"Vector"}],"type":"Bool"},{"id":-2067899501,"method":"account.updateNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"},{"name":"settings","type":"InputPeerNotifySettings"}],"type":"Bool"},{"id":313765169,"method":"account.getNotifySettings","params":[{"name":"peer","type":"InputNotifyPeer"}],"type":"PeerNotifySettings"},{"id":-612493497,"method":"account.resetNotifySettings","params":[],"type":"Bool"},{"id":2018596725,"method":"account.updateProfile","params":[{"name":"flags","type":"#"},{"name":"first_name","type":"flags.0?string"},{"name":"last_name","type":"flags.1?string"},{"name":"about","type":"flags.2?string"}],"type":"User"},{"id":1713919532,"method":"account.updateStatus","params":[{"name":"offline","type":"Bool"}],"type":"Bool"},{"id":127302966,"method":"account.getWallPapers","params":[{"name":"hash","type":"long"}],"type":"account.WallPapers"},{"id":-977650298,"method":"account.reportPeer","params":[{"name":"peer","type":"InputPeer"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":655677548,"method":"account.checkUsername","params":[{"name":"username","type":"string"}],"type":"Bool"},{"id":1040964988,"method":"account.updateUsername","params":[{"name":"username","type":"string"}],"type":"User"},{"id":-623130288,"method":"account.getPrivacy","params":[{"name":"key","type":"InputPrivacyKey"}],"type":"account.PrivacyRules"},{"id":-906486552,"method":"account.setPrivacy","params":[{"name":"key","type":"InputPrivacyKey"},{"name":"rules","type":"Vector"}],"type":"account.PrivacyRules"},{"id":1099779595,"method":"account.deleteAccount","params":[{"name":"reason","type":"string"}],"type":"Bool"},{"id":150761757,"method":"account.getAccountTTL","params":[],"type":"AccountDaysTTL"},{"id":608323678,"method":"account.setAccountTTL","params":[{"name":"ttl","type":"AccountDaysTTL"}],"type":"Bool"},{"id":-2108208411,"method":"account.sendChangePhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1891839707,"method":"account.changePhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"User"},{"id":954152242,"method":"account.updateDeviceLocked","params":[{"name":"period","type":"int"}],"type":"Bool"},{"id":-484392616,"method":"account.getAuthorizations","params":[],"type":"account.Authorizations"},{"id":-545786948,"method":"account.resetAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1418342645,"method":"account.getPassword","params":[],"type":"account.Password"},{"id":-1663767815,"method":"account.getPasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"}],"type":"account.PasswordSettings"},{"id":-1516564433,"method":"account.updatePasswordSettings","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"new_settings","type":"account.PasswordInputSettings"}],"type":"Bool"},{"id":457157256,"method":"account.sendConfirmPhoneCode","params":[{"name":"hash","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1596029123,"method":"account.confirmPhone","params":[{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1151208273,"method":"account.getTmpPassword","params":[{"name":"password","type":"InputCheckPasswordSRP"},{"name":"period","type":"int"}],"type":"account.TmpPassword"},{"id":405695855,"method":"account.getWebAuthorizations","params":[],"type":"account.WebAuthorizations"},{"id":755087855,"method":"account.resetWebAuthorization","params":[{"name":"hash","type":"long"}],"type":"Bool"},{"id":1747789204,"method":"account.resetWebAuthorizations","params":[],"type":"Bool"},{"id":-1299661699,"method":"account.getAllSecureValues","params":[],"type":"Vector"},{"id":1936088002,"method":"account.getSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Vector"},{"id":-1986010339,"method":"account.saveSecureValue","params":[{"name":"value","type":"InputSecureValue"},{"name":"secure_secret_id","type":"long"}],"type":"SecureValue"},{"id":-1199522741,"method":"account.deleteSecureValue","params":[{"name":"types","type":"Vector"}],"type":"Bool"},{"id":-1456907910,"method":"account.getAuthorizationForm","params":[{"name":"bot_id","type":"long"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"}],"type":"account.AuthorizationForm"},{"id":-202552205,"method":"account.acceptAuthorization","params":[{"name":"bot_id","type":"long"},{"name":"scope","type":"string"},{"name":"public_key","type":"string"},{"name":"value_hashes","type":"Vector"},{"name":"credentials","type":"SecureCredentialsEncrypted"}],"type":"Bool"},{"id":-1516022023,"method":"account.sendVerifyPhoneCode","params":[{"name":"phone_number","type":"string"},{"name":"settings","type":"CodeSettings"}],"type":"auth.SentCode"},{"id":1305716726,"method":"account.verifyPhone","params":[{"name":"phone_number","type":"string"},{"name":"phone_code_hash","type":"string"},{"name":"phone_code","type":"string"}],"type":"Bool"},{"id":1880182943,"method":"account.sendVerifyEmailCode","params":[{"name":"email","type":"string"}],"type":"account.SentEmailCode"},{"id":-323339813,"method":"account.verifyEmail","params":[{"name":"email","type":"string"},{"name":"code","type":"string"}],"type":"Bool"},{"id":-262453244,"method":"account.initTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"contacts","type":"flags.0?true"},{"name":"message_users","type":"flags.1?true"},{"name":"message_chats","type":"flags.2?true"},{"name":"message_megagroups","type":"flags.3?true"},{"name":"message_channels","type":"flags.4?true"},{"name":"files","type":"flags.5?true"},{"name":"file_max_size","type":"flags.5?int"}],"type":"account.Takeout"},{"id":489050862,"method":"account.finishTakeoutSession","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.0?true"}],"type":"Bool"},{"id":-1881204448,"method":"account.confirmPasswordEmail","params":[{"name":"code","type":"string"}],"type":"Bool"},{"id":2055154197,"method":"account.resendPasswordEmail","params":[],"type":"Bool"},{"id":-1043606090,"method":"account.cancelPasswordEmail","params":[],"type":"Bool"},{"id":-1626880216,"method":"account.getContactSignUpNotification","params":[],"type":"Bool"},{"id":-806076575,"method":"account.setContactSignUpNotification","params":[{"name":"silent","type":"Bool"}],"type":"Bool"},{"id":1398240377,"method":"account.getNotifyExceptions","params":[{"name":"flags","type":"#"},{"name":"compare_sound","type":"flags.1?true"},{"name":"peer","type":"flags.0?InputNotifyPeer"}],"type":"Updates"},{"id":-57811990,"method":"account.getWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"}],"type":"WallPaper"},{"id":-578472351,"method":"account.uploadWallPaper","params":[{"name":"file","type":"InputFile"},{"name":"mime_type","type":"string"},{"name":"settings","type":"WallPaperSettings"}],"type":"WallPaper"},{"id":1817860919,"method":"account.saveWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"unsave","type":"Bool"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-18000023,"method":"account.installWallPaper","params":[{"name":"wallpaper","type":"InputWallPaper"},{"name":"settings","type":"WallPaperSettings"}],"type":"Bool"},{"id":-1153722364,"method":"account.resetWallPapers","params":[],"type":"Bool"},{"id":1457130303,"method":"account.getAutoDownloadSettings","params":[],"type":"account.AutoDownloadSettings"},{"id":1995661875,"method":"account.saveAutoDownloadSettings","params":[{"name":"flags","type":"#"},{"name":"low","type":"flags.0?true"},{"name":"high","type":"flags.1?true"},{"name":"settings","type":"AutoDownloadSettings"}],"type":"Bool"},{"id":473805619,"method":"account.uploadTheme","params":[{"name":"flags","type":"#"},{"name":"file","type":"InputFile"},{"name":"thumb","type":"flags.0?InputFile"},{"name":"file_name","type":"string"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":-2077048289,"method":"account.createTheme","params":[{"name":"flags","type":"#"},{"name":"slug","type":"string"},{"name":"title","type":"string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":1555261397,"method":"account.updateTheme","params":[{"name":"flags","type":"#"},{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"slug","type":"flags.0?string"},{"name":"title","type":"flags.1?string"},{"name":"document","type":"flags.2?InputDocument"},{"name":"settings","type":"flags.3?InputThemeSettings"}],"type":"Theme"},{"id":-229175188,"method":"account.saveTheme","params":[{"name":"theme","type":"InputTheme"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":2061776695,"method":"account.installTheme","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"format","type":"flags.1?string"},{"name":"theme","type":"flags.1?InputTheme"}],"type":"Bool"},{"id":-1919060949,"method":"account.getTheme","params":[{"name":"format","type":"string"},{"name":"theme","type":"InputTheme"},{"name":"document_id","type":"long"}],"type":"Theme"},{"id":1913054296,"method":"account.getThemes","params":[{"name":"format","type":"string"},{"name":"hash","type":"long"}],"type":"account.Themes"},{"id":-1250643605,"method":"account.setContentSettings","params":[{"name":"flags","type":"#"},{"name":"sensitive_enabled","type":"flags.0?true"}],"type":"Bool"},{"id":-1952756306,"method":"account.getContentSettings","params":[],"type":"account.ContentSettings"},{"id":1705865692,"method":"account.getMultiWallPapers","params":[{"name":"wallpapers","type":"Vector"}],"type":"Vector"},{"id":-349483786,"method":"account.getGlobalPrivacySettings","params":[],"type":"GlobalPrivacySettings"},{"id":517647042,"method":"account.setGlobalPrivacySettings","params":[{"name":"settings","type":"GlobalPrivacySettings"}],"type":"GlobalPrivacySettings"},{"id":-91437323,"method":"account.reportProfilePhoto","params":[{"name":"peer","type":"InputPeer"},{"name":"photo_id","type":"InputPhoto"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":-1828139493,"method":"account.resetPassword","params":[],"type":"account.ResetPasswordResult"},{"id":1284770294,"method":"account.declinePasswordReset","params":[],"type":"Bool"},{"id":-690545285,"method":"account.getChatThemes","params":[{"name":"hash","type":"int"}],"type":"account.ChatThemes"},{"id":227648840,"method":"users.getUsers","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-902781519,"method":"users.getFullUser","params":[{"name":"id","type":"InputUser"}],"type":"UserFull"},{"id":-1865902923,"method":"users.setSecureValueErrors","params":[{"name":"id","type":"InputUser"},{"name":"errors","type":"Vector"}],"type":"Bool"},{"id":2061264541,"method":"contacts.getContactIDs","params":[{"name":"hash","type":"long"}],"type":"Vector"},{"id":-995929106,"method":"contacts.getStatuses","params":[],"type":"Vector"},{"id":1574346258,"method":"contacts.getContacts","params":[{"name":"hash","type":"long"}],"type":"contacts.Contacts"},{"id":746589157,"method":"contacts.importContacts","params":[{"name":"contacts","type":"Vector"}],"type":"contacts.ImportedContacts"},{"id":157945344,"method":"contacts.deleteContacts","params":[{"name":"id","type":"Vector"}],"type":"Updates"},{"id":269745566,"method":"contacts.deleteByPhones","params":[{"name":"phones","type":"Vector"}],"type":"Bool"},{"id":1758204945,"method":"contacts.block","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-1096393392,"method":"contacts.unblock","params":[{"name":"id","type":"InputPeer"}],"type":"Bool"},{"id":-176409329,"method":"contacts.getBlocked","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"contacts.Blocked"},{"id":301470424,"method":"contacts.search","params":[{"name":"q","type":"string"},{"name":"limit","type":"int"}],"type":"contacts.Found"},{"id":-113456221,"method":"contacts.resolveUsername","params":[{"name":"username","type":"string"}],"type":"contacts.ResolvedPeer"},{"id":-1758168906,"method":"contacts.getTopPeers","params":[{"name":"flags","type":"#"},{"name":"correspondents","type":"flags.0?true"},{"name":"bots_pm","type":"flags.1?true"},{"name":"bots_inline","type":"flags.2?true"},{"name":"phone_calls","type":"flags.3?true"},{"name":"forward_users","type":"flags.4?true"},{"name":"forward_chats","type":"flags.5?true"},{"name":"groups","type":"flags.10?true"},{"name":"channels","type":"flags.15?true"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"contacts.TopPeers"},{"id":451113900,"method":"contacts.resetTopPeerRating","params":[{"name":"category","type":"TopPeerCategory"},{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-2020263951,"method":"contacts.resetSaved","params":[],"type":"Bool"},{"id":-2098076769,"method":"contacts.getSaved","params":[],"type":"Vector"},{"id":-2062238246,"method":"contacts.toggleTopPeers","params":[{"name":"enabled","type":"Bool"}],"type":"Bool"},{"id":-386636848,"method":"contacts.addContact","params":[{"name":"flags","type":"#"},{"name":"add_phone_privacy_exception","type":"flags.0?true"},{"name":"id","type":"InputUser"},{"name":"first_name","type":"string"},{"name":"last_name","type":"string"},{"name":"phone","type":"string"}],"type":"Updates"},{"id":-130964977,"method":"contacts.acceptContact","params":[{"name":"id","type":"InputUser"}],"type":"Updates"},{"id":-750207932,"method":"contacts.getLocated","params":[{"name":"flags","type":"#"},{"name":"background","type":"flags.1?true"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"self_expires","type":"flags.0?int"}],"type":"Updates"},{"id":698914348,"method":"contacts.blockFromReplies","params":[{"name":"flags","type":"#"},{"name":"delete_message","type":"flags.0?true"},{"name":"delete_history","type":"flags.1?true"},{"name":"report_spam","type":"flags.2?true"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1673946374,"method":"messages.getMessages","params":[{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1594569905,"method":"messages.getDialogs","params":[{"name":"flags","type":"#"},{"name":"exclude_pinned","type":"flags.0?true"},{"name":"folder_id","type":"flags.1?int"},{"name":"offset_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Dialogs"},{"id":1143203525,"method":"messages.getHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":-1593989278,"method":"messages.search","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"q","type":"string"},{"name":"from_id","type":"flags.0?InputPeer"},{"name":"top_msg_id","type":"flags.1?int"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":238054714,"method":"messages.readHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedMessages"},{"id":469850889,"method":"messages.deleteHistory","params":[{"name":"flags","type":"#"},{"name":"just_clear","type":"flags.0?true"},{"name":"revoke","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"max_id","type":"int"}],"type":"messages.AffectedHistory"},{"id":-443640366,"method":"messages.deleteMessages","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":94983360,"method":"messages.receivedMessages","params":[{"name":"max_id","type":"int"}],"type":"Vector"},{"id":1486110434,"method":"messages.setTyping","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"top_msg_id","type":"flags.0?int"},{"name":"action","type":"SendMessageAction"}],"type":"Bool"},{"id":1376532592,"method":"messages.sendMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":881978281,"method":"messages.sendMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"media","type":"InputMedia"},{"name":"message","type":"string"},{"name":"random_id","type":"long"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-637606386,"method":"messages.forwardMessages","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"with_my_score","type":"flags.8?true"},{"name":"drop_author","type":"flags.11?true"},{"name":"drop_media_captions","type":"flags.12?true"},{"name":"from_peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"random_id","type":"Vector"},{"name":"to_peer","type":"InputPeer"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-820669733,"method":"messages.reportSpam","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":913498268,"method":"messages.getPeerSettings","params":[{"name":"peer","type":"InputPeer"}],"type":"PeerSettings"},{"id":-1991005362,"method":"messages.report","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"reason","type":"ReportReason"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1240027791,"method":"messages.getChats","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":-1364194508,"method":"messages.getFullChat","params":[{"name":"chat_id","type":"long"}],"type":"messages.ChatFull"},{"id":1937260541,"method":"messages.editChatTitle","params":[{"name":"chat_id","type":"long"},{"name":"title","type":"string"}],"type":"Updates"},{"id":903730804,"method":"messages.editChatPhoto","params":[{"name":"chat_id","type":"long"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":-230206493,"method":"messages.addChatUser","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"},{"name":"fwd_limit","type":"int"}],"type":"Updates"},{"id":-1575461717,"method":"messages.deleteChatUser","params":[{"name":"flags","type":"#"},{"name":"revoke_history","type":"flags.0?true"},{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"}],"type":"Updates"},{"id":164303470,"method":"messages.createChat","params":[{"name":"users","type":"Vector"},{"name":"title","type":"string"}],"type":"Updates"},{"id":651135312,"method":"messages.getDhConfig","params":[{"name":"version","type":"int"},{"name":"random_length","type":"int"}],"type":"messages.DhConfig"},{"id":-162681021,"method":"messages.requestEncryption","params":[{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a","type":"bytes"}],"type":"EncryptedChat"},{"id":1035731989,"method":"messages.acceptEncryption","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"g_b","type":"bytes"},{"name":"key_fingerprint","type":"long"}],"type":"EncryptedChat"},{"id":-208425312,"method":"messages.discardEncryption","params":[{"name":"flags","type":"#"},{"name":"delete_history","type":"flags.0?true"},{"name":"chat_id","type":"int"}],"type":"Bool"},{"id":2031374829,"method":"messages.setEncryptedTyping","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"typing","type":"Bool"}],"type":"Bool"},{"id":2135648522,"method":"messages.readEncryptedHistory","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"max_date","type":"int"}],"type":"Bool"},{"id":1157265941,"method":"messages.sendEncrypted","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1431914525,"method":"messages.sendEncryptedFile","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"},{"name":"file","type":"InputEncryptedFile"}],"type":"messages.SentEncryptedMessage"},{"id":852769188,"method":"messages.sendEncryptedService","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"random_id","type":"long"},{"name":"data","type":"bytes"}],"type":"messages.SentEncryptedMessage"},{"id":1436924774,"method":"messages.receivedQueue","params":[{"name":"max_qts","type":"int"}],"type":"Vector"},{"id":1259113487,"method":"messages.reportEncryptedSpam","params":[{"name":"peer","type":"InputEncryptedChat"}],"type":"Bool"},{"id":916930423,"method":"messages.readMessageContents","params":[{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":-710552671,"method":"messages.getStickers","params":[{"name":"emoticon","type":"string"},{"name":"hash","type":"long"}],"type":"messages.Stickers"},{"id":-1197432408,"method":"messages.getAllStickers","params":[{"name":"hash","type":"long"}],"type":"messages.AllStickers"},{"id":-1956073268,"method":"messages.getWebPagePreview","params":[{"name":"flags","type":"#"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"MessageMedia"},{"id":347716823,"method":"messages.exportChatInvite","params":[{"name":"flags","type":"#"},{"name":"legacy_revoke_permanent","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"ExportedChatInvite"},{"id":1051570619,"method":"messages.checkChatInvite","params":[{"name":"hash","type":"string"}],"type":"ChatInvite"},{"id":1817183516,"method":"messages.importChatInvite","params":[{"name":"hash","type":"string"}],"type":"Updates"},{"id":639215886,"method":"messages.getStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"messages.StickerSet"},{"id":-946871200,"method":"messages.installStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"archived","type":"Bool"}],"type":"messages.StickerSetInstallResult"},{"id":-110209570,"method":"messages.uninstallStickerSet","params":[{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":-421563528,"method":"messages.startBot","params":[{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"long"},{"name":"start_param","type":"string"}],"type":"Updates"},{"id":1468322785,"method":"messages.getMessagesViews","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"},{"name":"increment","type":"Bool"}],"type":"messages.MessageViews"},{"id":-1470377534,"method":"messages.editChatAdmin","params":[{"name":"chat_id","type":"long"},{"name":"user_id","type":"InputUser"},{"name":"is_admin","type":"Bool"}],"type":"Bool"},{"id":-1568189671,"method":"messages.migrateChat","params":[{"name":"chat_id","type":"long"}],"type":"Updates"},{"id":1271290010,"method":"messages.searchGlobal","params":[{"name":"flags","type":"#"},{"name":"folder_id","type":"flags.0?int"},{"name":"q","type":"string"},{"name":"filter","type":"MessagesFilter"},{"name":"min_date","type":"int"},{"name":"max_date","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":2016638777,"method":"messages.reorderStickerSets","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":864953444,"method":"messages.getDocumentByHash","params":[{"name":"sha256","type":"bytes"},{"name":"size","type":"int"},{"name":"mime_type","type":"string"}],"type":"Document"},{"id":1559270965,"method":"messages.getSavedGifs","params":[{"name":"hash","type":"long"}],"type":"messages.SavedGifs"},{"id":846868683,"method":"messages.saveGif","params":[{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":1364105629,"method":"messages.getInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"bot","type":"InputUser"},{"name":"peer","type":"InputPeer"},{"name":"geo_point","type":"flags.0?InputGeoPoint"},{"name":"query","type":"string"},{"name":"offset","type":"string"}],"type":"messages.BotResults"},{"id":-346119674,"method":"messages.setInlineBotResults","params":[{"name":"flags","type":"#"},{"name":"gallery","type":"flags.0?true"},{"name":"private","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"results","type":"Vector"},{"name":"cache_time","type":"int"},{"name":"next_offset","type":"flags.2?string"},{"name":"switch_pm","type":"flags.3?InlineBotSwitchPM"}],"type":"Bool"},{"id":570955184,"method":"messages.sendInlineBotResult","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"hide_via","type":"flags.11?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"random_id","type":"long"},{"name":"query_id","type":"long"},{"name":"id","type":"string"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":-39416522,"method":"messages.getMessageEditData","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"messages.MessageEditData"},{"id":1224152952,"method":"messages.editMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"},{"name":"schedule_date","type":"flags.15?int"}],"type":"Updates"},{"id":-2091549254,"method":"messages.editInlineBotMessage","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"message","type":"flags.11?string"},{"name":"media","type":"flags.14?InputMedia"},{"name":"reply_markup","type":"flags.2?ReplyMarkup"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":-1824339449,"method":"messages.getBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"game","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"data","type":"flags.0?bytes"},{"name":"password","type":"flags.2?InputCheckPasswordSRP"}],"type":"messages.BotCallbackAnswer"},{"id":-712043766,"method":"messages.setBotCallbackAnswer","params":[{"name":"flags","type":"#"},{"name":"alert","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"message","type":"flags.0?string"},{"name":"url","type":"flags.2?string"},{"name":"cache_time","type":"int"}],"type":"Bool"},{"id":-462373635,"method":"messages.getPeerDialogs","params":[{"name":"peers","type":"Vector"}],"type":"messages.PeerDialogs"},{"id":-1137057461,"method":"messages.saveDraft","params":[{"name":"flags","type":"#"},{"name":"no_webpage","type":"flags.1?true"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"peer","type":"InputPeer"},{"name":"message","type":"string"},{"name":"entities","type":"flags.3?Vector"}],"type":"Bool"},{"id":1782549861,"method":"messages.getAllDrafts","params":[],"type":"Updates"},{"id":1685588756,"method":"messages.getFeaturedStickers","params":[{"name":"hash","type":"long"}],"type":"messages.FeaturedStickers"},{"id":1527873830,"method":"messages.readFeaturedStickers","params":[{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1649852357,"method":"messages.getRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"hash","type":"long"}],"type":"messages.RecentStickers"},{"id":958863608,"method":"messages.saveRecentSticker","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"},{"name":"id","type":"InputDocument"},{"name":"unsave","type":"Bool"}],"type":"Bool"},{"id":-1986437075,"method":"messages.clearRecentStickers","params":[{"name":"flags","type":"#"},{"name":"attached","type":"flags.0?true"}],"type":"Bool"},{"id":1475442322,"method":"messages.getArchivedStickers","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"offset_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.ArchivedStickers"},{"id":1678738104,"method":"messages.getMaskStickers","params":[{"name":"hash","type":"long"}],"type":"messages.AllStickers"},{"id":-866424884,"method":"messages.getAttachedStickers","params":[{"name":"media","type":"InputStickeredMedia"}],"type":"Vector"},{"id":-1896289088,"method":"messages.setGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Updates"},{"id":363700068,"method":"messages.setInlineGameScore","params":[{"name":"flags","type":"#"},{"name":"edit_message","type":"flags.0?true"},{"name":"force","type":"flags.1?true"},{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"},{"name":"score","type":"int"}],"type":"Bool"},{"id":-400399203,"method":"messages.getGameHighScores","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":258170395,"method":"messages.getInlineGameHighScores","params":[{"name":"id","type":"InputBotInlineMessageID"},{"name":"user_id","type":"InputUser"}],"type":"messages.HighScores"},{"id":-468934396,"method":"messages.getCommonChats","params":[{"name":"user_id","type":"InputUser"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"messages.Chats"},{"id":-2023787330,"method":"messages.getAllChats","params":[{"name":"except_ids","type":"Vector"}],"type":"messages.Chats"},{"id":852135825,"method":"messages.getWebPage","params":[{"name":"url","type":"string"},{"name":"hash","type":"int"}],"type":"WebPage"},{"id":-1489903017,"method":"messages.toggleDialogPin","params":[{"name":"flags","type":"#"},{"name":"pinned","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":991616823,"method":"messages.reorderPinnedDialogs","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"folder_id","type":"int"},{"name":"order","type":"Vector"}],"type":"Bool"},{"id":-692498958,"method":"messages.getPinnedDialogs","params":[{"name":"folder_id","type":"int"}],"type":"messages.PeerDialogs"},{"id":-436833542,"method":"messages.setBotShippingResults","params":[{"name":"flags","type":"#"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"},{"name":"shipping_options","type":"flags.1?Vector"}],"type":"Bool"},{"id":163765653,"method":"messages.setBotPrecheckoutResults","params":[{"name":"flags","type":"#"},{"name":"success","type":"flags.1?true"},{"name":"query_id","type":"long"},{"name":"error","type":"flags.0?string"}],"type":"Bool"},{"id":1369162417,"method":"messages.uploadMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":-914493408,"method":"messages.sendScreenshotNotification","params":[{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"int"},{"name":"random_id","type":"long"}],"type":"Updates"},{"id":82946729,"method":"messages.getFavedStickers","params":[{"name":"hash","type":"long"}],"type":"messages.FavedStickers"},{"id":-1174420133,"method":"messages.faveSticker","params":[{"name":"id","type":"InputDocument"},{"name":"unfave","type":"Bool"}],"type":"Bool"},{"id":1180140658,"method":"messages.getUnreadMentions","params":[{"name":"peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"}],"type":"messages.Messages"},{"id":251759059,"method":"messages.readMentions","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1881817312,"method":"messages.getRecentLocations","params":[{"name":"peer","type":"InputPeer"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":-872345397,"method":"messages.sendMultiMedia","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.5?true"},{"name":"background","type":"flags.6?true"},{"name":"clear_draft","type":"flags.7?true"},{"name":"peer","type":"InputPeer"},{"name":"reply_to_msg_id","type":"flags.0?int"},{"name":"multi_media","type":"Vector"},{"name":"schedule_date","type":"flags.10?int"}],"type":"Updates"},{"id":1347929239,"method":"messages.uploadEncryptedFile","params":[{"name":"peer","type":"InputEncryptedChat"},{"name":"file","type":"InputEncryptedFile"}],"type":"EncryptedFile"},{"id":896555914,"method":"messages.searchStickerSets","params":[{"name":"flags","type":"#"},{"name":"exclude_featured","type":"flags.0?true"},{"name":"q","type":"string"},{"name":"hash","type":"long"}],"type":"messages.FoundStickerSets"},{"id":486505992,"method":"messages.getSplitRanges","params":[],"type":"Vector"},{"id":-1031349873,"method":"messages.markDialogUnread","params":[{"name":"flags","type":"#"},{"name":"unread","type":"flags.0?true"},{"name":"peer","type":"InputDialogPeer"}],"type":"Bool"},{"id":585256482,"method":"messages.getDialogUnreadMarks","params":[],"type":"Vector"},{"id":2119757468,"method":"messages.clearAllDrafts","params":[],"type":"Bool"},{"id":-760547348,"method":"messages.updatePinnedMessage","params":[{"name":"flags","type":"#"},{"name":"silent","type":"flags.0?true"},{"name":"unpin","type":"flags.1?true"},{"name":"pm_oneside","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"}],"type":"Updates"},{"id":283795844,"method":"messages.sendVote","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"options","type":"Vector"}],"type":"Updates"},{"id":1941660731,"method":"messages.getPollResults","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Updates"},{"id":1848369232,"method":"messages.getOnlines","params":[{"name":"peer","type":"InputPeer"}],"type":"ChatOnlines"},{"id":-2127811866,"method":"messages.getStatsURL","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"params","type":"string"}],"type":"StatsURL"},{"id":-554301545,"method":"messages.editChatAbout","params":[{"name":"peer","type":"InputPeer"},{"name":"about","type":"string"}],"type":"Bool"},{"id":-1517917375,"method":"messages.editChatDefaultBannedRights","params":[{"name":"peer","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":899735650,"method":"messages.getEmojiKeywords","params":[{"name":"lang_code","type":"string"}],"type":"EmojiKeywordsDifference"},{"id":352892591,"method":"messages.getEmojiKeywordsDifference","params":[{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"EmojiKeywordsDifference"},{"id":1318675378,"method":"messages.getEmojiKeywordsLanguages","params":[{"name":"lang_codes","type":"Vector"}],"type":"Vector"},{"id":-709817306,"method":"messages.getEmojiURL","params":[{"name":"lang_code","type":"string"}],"type":"EmojiURL"},{"id":1932455680,"method":"messages.getSearchCounters","params":[{"name":"peer","type":"InputPeer"},{"name":"filters","type":"Vector"}],"type":"Vector"},{"id":428848198,"method":"messages.requestUrlAuth","params":[{"name":"flags","type":"#"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":-1322487515,"method":"messages.acceptUrlAuth","params":[{"name":"flags","type":"#"},{"name":"write_allowed","type":"flags.0?true"},{"name":"peer","type":"flags.1?InputPeer"},{"name":"msg_id","type":"flags.1?int"},{"name":"button_id","type":"flags.1?int"},{"name":"url","type":"flags.2?string"}],"type":"UrlAuthResult"},{"id":1336717624,"method":"messages.hidePeerSettingsBar","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-183077365,"method":"messages.getScheduledHistory","params":[{"name":"peer","type":"InputPeer"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":-1111817116,"method":"messages.getScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":-1120369398,"method":"messages.sendScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":1504586518,"method":"messages.deleteScheduledMessages","params":[{"name":"peer","type":"InputPeer"},{"name":"id","type":"Vector"}],"type":"Updates"},{"id":-1200736242,"method":"messages.getPollVotes","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"id","type":"int"},{"name":"option","type":"flags.0?bytes"},{"name":"offset","type":"flags.1?string"},{"name":"limit","type":"int"}],"type":"messages.VotesList"},{"id":-1257951254,"method":"messages.toggleStickerSets","params":[{"name":"flags","type":"#"},{"name":"uninstall","type":"flags.0?true"},{"name":"archive","type":"flags.1?true"},{"name":"unarchive","type":"flags.2?true"},{"name":"stickersets","type":"Vector"}],"type":"Bool"},{"id":-241247891,"method":"messages.getDialogFilters","params":[],"type":"Vector"},{"id":-1566780372,"method":"messages.getSuggestedDialogFilters","params":[],"type":"Vector"},{"id":450142282,"method":"messages.updateDialogFilter","params":[{"name":"flags","type":"#"},{"name":"id","type":"int"},{"name":"filter","type":"flags.0?DialogFilter"}],"type":"Bool"},{"id":-983318044,"method":"messages.updateDialogFiltersOrder","params":[{"name":"order","type":"Vector"}],"type":"Bool"},{"id":2127598753,"method":"messages.getOldFeaturedStickers","params":[{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"messages.FeaturedStickers"},{"id":584962828,"method":"messages.getReplies","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"offset_id","type":"int"},{"name":"offset_date","type":"int"},{"name":"add_offset","type":"int"},{"name":"limit","type":"int"},{"name":"max_id","type":"int"},{"name":"min_id","type":"int"},{"name":"hash","type":"long"}],"type":"messages.Messages"},{"id":1147761405,"method":"messages.getDiscussionMessage","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"messages.DiscussionMessage"},{"id":-147740172,"method":"messages.readDiscussion","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"read_max_id","type":"int"}],"type":"Bool"},{"id":-265962357,"method":"messages.unpinAllMessages","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.AffectedHistory"},{"id":1540419152,"method":"messages.deleteChat","params":[{"name":"chat_id","type":"long"}],"type":"Bool"},{"id":-104078327,"method":"messages.deletePhoneCallHistory","params":[{"name":"flags","type":"#"},{"name":"revoke","type":"flags.0?true"}],"type":"messages.AffectedFoundMessages"},{"id":1140726259,"method":"messages.checkHistoryImport","params":[{"name":"import_head","type":"string"}],"type":"messages.HistoryImportParsed"},{"id":873008187,"method":"messages.initHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"file","type":"InputFile"},{"name":"media_count","type":"int"}],"type":"messages.HistoryImport"},{"id":713433234,"method":"messages.uploadImportedMedia","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"},{"name":"file_name","type":"string"},{"name":"media","type":"InputMedia"}],"type":"MessageMedia"},{"id":-1271008444,"method":"messages.startHistoryImport","params":[{"name":"peer","type":"InputPeer"},{"name":"import_id","type":"long"}],"type":"Bool"},{"id":-1565154314,"method":"messages.getExportedChatInvites","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.3?true"},{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"},{"name":"offset_date","type":"flags.2?int"},{"name":"offset_link","type":"flags.2?string"},{"name":"limit","type":"int"}],"type":"messages.ExportedChatInvites"},{"id":1937010524,"method":"messages.getExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"messages.ExportedChatInvite"},{"id":48562110,"method":"messages.editExportedChatInvite","params":[{"name":"flags","type":"#"},{"name":"revoked","type":"flags.2?true"},{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"expire_date","type":"flags.0?int"},{"name":"usage_limit","type":"flags.1?int"}],"type":"messages.ExportedChatInvite"},{"id":1452833749,"method":"messages.deleteRevokedExportedChatInvites","params":[{"name":"peer","type":"InputPeer"},{"name":"admin_id","type":"InputUser"}],"type":"Bool"},{"id":-731601877,"method":"messages.deleteExportedChatInvite","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"}],"type":"Bool"},{"id":958457583,"method":"messages.getAdminsWithInvites","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.ChatAdminsWithInvites"},{"id":654013065,"method":"messages.getChatInviteImporters","params":[{"name":"peer","type":"InputPeer"},{"name":"link","type":"string"},{"name":"offset_date","type":"int"},{"name":"offset_user","type":"InputUser"},{"name":"limit","type":"int"}],"type":"messages.ChatInviteImporters"},{"id":-1207017500,"method":"messages.setHistoryTTL","params":[{"name":"peer","type":"InputPeer"},{"name":"period","type":"int"}],"type":"Updates"},{"id":1573261059,"method":"messages.checkHistoryImportPeer","params":[{"name":"peer","type":"InputPeer"}],"type":"messages.CheckedHistoryImportPeer"},{"id":-432283329,"method":"messages.setChatTheme","params":[{"name":"peer","type":"InputPeer"},{"name":"emoticon","type":"string"}],"type":"Updates"},{"id":745510839,"method":"messages.getMessageReadParticipants","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"Vector"},{"id":-304838614,"method":"updates.getState","params":[],"type":"updates.State"},{"id":630429265,"method":"updates.getDifference","params":[{"name":"flags","type":"#"},{"name":"pts","type":"int"},{"name":"pts_total_limit","type":"flags.0?int"},{"name":"date","type":"int"},{"name":"qts","type":"int"}],"type":"updates.Difference"},{"id":51854712,"method":"updates.getChannelDifference","params":[{"name":"flags","type":"#"},{"name":"force","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelMessagesFilter"},{"name":"pts","type":"int"},{"name":"limit","type":"int"}],"type":"updates.ChannelDifference"},{"id":1926525996,"method":"photos.updateProfilePhoto","params":[{"name":"id","type":"InputPhoto"}],"type":"photos.Photo"},{"id":-1980559511,"method":"photos.uploadProfilePhoto","params":[{"name":"flags","type":"#"},{"name":"file","type":"flags.0?InputFile"},{"name":"video","type":"flags.1?InputFile"},{"name":"video_start_ts","type":"flags.2?double"}],"type":"photos.Photo"},{"id":-2016444625,"method":"photos.deletePhotos","params":[{"name":"id","type":"Vector"}],"type":"Vector"},{"id":-1848823128,"method":"photos.getUserPhotos","params":[{"name":"user_id","type":"InputUser"},{"name":"offset","type":"int"},{"name":"max_id","type":"long"},{"name":"limit","type":"int"}],"type":"photos.Photos"},{"id":-1291540959,"method":"upload.saveFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":-1319462148,"method":"upload.getFile","params":[{"name":"flags","type":"#"},{"name":"precise","type":"flags.0?true"},{"name":"cdn_supported","type":"flags.1?true"},{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.File"},{"id":-562337987,"method":"upload.saveBigFilePart","params":[{"name":"file_id","type":"long"},{"name":"file_part","type":"int"},{"name":"file_total_parts","type":"int"},{"name":"bytes","type":"bytes"}],"type":"Bool"},{"id":619086221,"method":"upload.getWebFile","params":[{"name":"location","type":"InputWebFileLocation"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.WebFile"},{"id":536919235,"method":"upload.getCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"},{"name":"limit","type":"int"}],"type":"upload.CdnFile"},{"id":-1691921240,"method":"upload.reuploadCdnFile","params":[{"name":"file_token","type":"bytes"},{"name":"request_token","type":"bytes"}],"type":"Vector"},{"id":1302676017,"method":"upload.getCdnFileHashes","params":[{"name":"file_token","type":"bytes"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":-956147407,"method":"upload.getFileHashes","params":[{"name":"location","type":"InputFileLocation"},{"name":"offset","type":"int"}],"type":"Vector"},{"id":-990308245,"method":"help.getConfig","params":[],"type":"Config"},{"id":531836966,"method":"help.getNearestDc","params":[],"type":"NearestDc"},{"id":1378703997,"method":"help.getAppUpdate","params":[{"name":"source","type":"string"}],"type":"help.AppUpdate"},{"id":1295590211,"method":"help.getInviteText","params":[],"type":"help.InviteText"},{"id":-1663104819,"method":"help.getSupport","params":[],"type":"help.Support"},{"id":-1877938321,"method":"help.getAppChangelog","params":[{"name":"prev_app_version","type":"string"}],"type":"Updates"},{"id":-333262899,"method":"help.setBotUpdatesStatus","params":[{"name":"pending_updates_count","type":"int"},{"name":"message","type":"string"}],"type":"Bool"},{"id":1375900482,"method":"help.getCdnConfig","params":[],"type":"CdnConfig"},{"id":1036054804,"method":"help.getRecentMeUrls","params":[{"name":"referer","type":"string"}],"type":"help.RecentMeUrls"},{"id":749019089,"method":"help.getTermsOfServiceUpdate","params":[],"type":"help.TermsOfServiceUpdate"},{"id":-294455398,"method":"help.acceptTermsOfService","params":[{"name":"id","type":"DataJSON"}],"type":"Bool"},{"id":1072547679,"method":"help.getDeepLinkInfo","params":[{"name":"path","type":"string"}],"type":"help.DeepLinkInfo"},{"id":-1735311088,"method":"help.getAppConfig","params":[],"type":"JSONValue"},{"id":1862465352,"method":"help.saveAppLog","params":[{"name":"events","type":"Vector"}],"type":"Bool"},{"id":-966677240,"method":"help.getPassportConfig","params":[{"name":"hash","type":"int"}],"type":"help.PassportConfig"},{"id":-748624084,"method":"help.getSupportName","params":[],"type":"help.SupportName"},{"id":59377875,"method":"help.getUserInfo","params":[{"name":"user_id","type":"InputUser"}],"type":"help.UserInfo"},{"id":1723407216,"method":"help.editUserInfo","params":[{"name":"user_id","type":"InputUser"},{"name":"message","type":"string"},{"name":"entities","type":"Vector"}],"type":"help.UserInfo"},{"id":-1063816159,"method":"help.getPromoData","params":[],"type":"help.PromoData"},{"id":505748629,"method":"help.hidePromoData","params":[{"name":"peer","type":"InputPeer"}],"type":"Bool"},{"id":-183649631,"method":"help.dismissSuggestion","params":[{"name":"peer","type":"InputPeer"},{"name":"suggestion","type":"string"}],"type":"Bool"},{"id":1935116200,"method":"help.getCountriesList","params":[{"name":"lang_code","type":"string"},{"name":"hash","type":"int"}],"type":"help.CountriesList"},{"id":-871347913,"method":"channels.readHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":-2067661490,"method":"channels.deleteMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.AffectedMessages"},{"id":-787622117,"method":"channels.deleteUserHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"}],"type":"messages.AffectedHistory"},{"id":-32999408,"method":"channels.reportSpam","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1383294429,"method":"channels.getMessages","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"messages.Messages"},{"id":2010044880,"method":"channels.getParticipants","params":[{"name":"channel","type":"InputChannel"},{"name":"filter","type":"ChannelParticipantsFilter"},{"name":"offset","type":"int"},{"name":"limit","type":"int"},{"name":"hash","type":"long"}],"type":"channels.ChannelParticipants"},{"id":-1599378234,"method":"channels.getParticipant","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"}],"type":"channels.ChannelParticipant"},{"id":176122811,"method":"channels.getChannels","params":[{"name":"id","type":"Vector"}],"type":"messages.Chats"},{"id":141781513,"method":"channels.getFullChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.ChatFull"},{"id":1029681423,"method":"channels.createChannel","params":[{"name":"flags","type":"#"},{"name":"broadcast","type":"flags.0?true"},{"name":"megagroup","type":"flags.1?true"},{"name":"for_import","type":"flags.3?true"},{"name":"title","type":"string"},{"name":"about","type":"string"},{"name":"geo_point","type":"flags.2?InputGeoPoint"},{"name":"address","type":"flags.2?string"}],"type":"Updates"},{"id":-751007486,"method":"channels.editAdmin","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"admin_rights","type":"ChatAdminRights"},{"name":"rank","type":"string"}],"type":"Updates"},{"id":1450044624,"method":"channels.editTitle","params":[{"name":"channel","type":"InputChannel"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-248621111,"method":"channels.editPhoto","params":[{"name":"channel","type":"InputChannel"},{"name":"photo","type":"InputChatPhoto"}],"type":"Updates"},{"id":283557164,"method":"channels.checkUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":890549214,"method":"channels.updateUsername","params":[{"name":"channel","type":"InputChannel"},{"name":"username","type":"string"}],"type":"Bool"},{"id":615851205,"method":"channels.joinChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-130635115,"method":"channels.leaveChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":429865580,"method":"channels.inviteToChannel","params":[{"name":"channel","type":"InputChannel"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":-1072619549,"method":"channels.deleteChannel","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-432034325,"method":"channels.exportMessageLink","params":[{"name":"flags","type":"#"},{"name":"grouped","type":"flags.0?true"},{"name":"thread","type":"flags.1?true"},{"name":"channel","type":"InputChannel"},{"name":"id","type":"int"}],"type":"ExportedMessageLink"},{"id":527021574,"method":"channels.toggleSignatures","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":-122669393,"method":"channels.getAdminedPublicChannels","params":[{"name":"flags","type":"#"},{"name":"by_location","type":"flags.0?true"},{"name":"check_limit","type":"flags.1?true"}],"type":"messages.Chats"},{"id":-1763259007,"method":"channels.editBanned","params":[{"name":"channel","type":"InputChannel"},{"name":"participant","type":"InputPeer"},{"name":"banned_rights","type":"ChatBannedRights"}],"type":"Updates"},{"id":870184064,"method":"channels.getAdminLog","params":[{"name":"flags","type":"#"},{"name":"channel","type":"InputChannel"},{"name":"q","type":"string"},{"name":"events_filter","type":"flags.0?ChannelAdminLogEventsFilter"},{"name":"admins","type":"flags.1?Vector"},{"name":"max_id","type":"long"},{"name":"min_id","type":"long"},{"name":"limit","type":"int"}],"type":"channels.AdminLogResults"},{"id":-359881479,"method":"channels.setStickers","params":[{"name":"channel","type":"InputChannel"},{"name":"stickerset","type":"InputStickerSet"}],"type":"Bool"},{"id":-357180360,"method":"channels.readMessageContents","params":[{"name":"channel","type":"InputChannel"},{"name":"id","type":"Vector"}],"type":"Bool"},{"id":-1355375294,"method":"channels.deleteHistory","params":[{"name":"channel","type":"InputChannel"},{"name":"max_id","type":"int"}],"type":"Bool"},{"id":-356796084,"method":"channels.togglePreHistoryHidden","params":[{"name":"channel","type":"InputChannel"},{"name":"enabled","type":"Bool"}],"type":"Updates"},{"id":-2092831552,"method":"channels.getLeftChannels","params":[{"name":"offset","type":"int"}],"type":"messages.Chats"},{"id":-170208392,"method":"channels.getGroupsForDiscussion","params":[],"type":"messages.Chats"},{"id":1079520178,"method":"channels.setDiscussionGroup","params":[{"name":"broadcast","type":"InputChannel"},{"name":"group","type":"InputChannel"}],"type":"Bool"},{"id":-1892102881,"method":"channels.editCreator","params":[{"name":"channel","type":"InputChannel"},{"name":"user_id","type":"InputUser"},{"name":"password","type":"InputCheckPasswordSRP"}],"type":"Updates"},{"id":1491484525,"method":"channels.editLocation","params":[{"name":"channel","type":"InputChannel"},{"name":"geo_point","type":"InputGeoPoint"},{"name":"address","type":"string"}],"type":"Bool"},{"id":-304832784,"method":"channels.toggleSlowMode","params":[{"name":"channel","type":"InputChannel"},{"name":"seconds","type":"int"}],"type":"Updates"},{"id":300429806,"method":"channels.getInactiveChannels","params":[],"type":"messages.InactiveChats"},{"id":187239529,"method":"channels.convertToGigagroup","params":[{"name":"channel","type":"InputChannel"}],"type":"Updates"},{"id":-1095836780,"method":"channels.viewSponsoredMessage","params":[{"name":"channel","type":"InputChannel"},{"name":"random_id","type":"bytes"}],"type":"Bool"},{"id":-333377601,"method":"channels.getSponsoredMessages","params":[{"name":"channel","type":"InputChannel"}],"type":"messages.SponsoredMessages"},{"id":-1440257555,"method":"bots.sendCustomRequest","params":[{"name":"custom_method","type":"string"},{"name":"params","type":"DataJSON"}],"type":"DataJSON"},{"id":-434028723,"method":"bots.answerWebhookJSONQuery","params":[{"name":"query_id","type":"long"},{"name":"data","type":"DataJSON"}],"type":"Bool"},{"id":85399130,"method":"bots.setBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"},{"name":"commands","type":"Vector"}],"type":"Bool"},{"id":1032708345,"method":"bots.resetBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Bool"},{"id":-481554986,"method":"bots.getBotCommands","params":[{"name":"scope","type":"BotCommandScope"},{"name":"lang_code","type":"string"}],"type":"Vector"},{"id":-1976353651,"method":"payments.getPaymentForm","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"theme_params","type":"flags.0?DataJSON"}],"type":"payments.PaymentForm"},{"id":611897804,"method":"payments.getPaymentReceipt","params":[{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"}],"type":"payments.PaymentReceipt"},{"id":-619695760,"method":"payments.validateRequestedInfo","params":[{"name":"flags","type":"#"},{"name":"save","type":"flags.0?true"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"info","type":"PaymentRequestedInfo"}],"type":"payments.ValidatedRequestedInfo"},{"id":818134173,"method":"payments.sendPaymentForm","params":[{"name":"flags","type":"#"},{"name":"form_id","type":"long"},{"name":"peer","type":"InputPeer"},{"name":"msg_id","type":"int"},{"name":"requested_info_id","type":"flags.0?string"},{"name":"shipping_option_id","type":"flags.1?string"},{"name":"credentials","type":"InputPaymentCredentials"},{"name":"tip_amount","type":"flags.2?long"}],"type":"payments.PaymentResult"},{"id":578650699,"method":"payments.getSavedInfo","params":[],"type":"payments.SavedInfo"},{"id":-667062079,"method":"payments.clearSavedInfo","params":[{"name":"flags","type":"#"},{"name":"credentials","type":"flags.0?true"},{"name":"info","type":"flags.1?true"}],"type":"Bool"},{"id":779736953,"method":"payments.getBankCardData","params":[{"name":"number","type":"string"}],"type":"payments.BankCardData"},{"id":-1876841625,"method":"stickers.createStickerSet","params":[{"name":"flags","type":"#"},{"name":"masks","type":"flags.0?true"},{"name":"animated","type":"flags.1?true"},{"name":"user_id","type":"InputUser"},{"name":"title","type":"string"},{"name":"short_name","type":"string"},{"name":"thumb","type":"flags.2?InputDocument"},{"name":"stickers","type":"Vector"},{"name":"software","type":"flags.3?string"}],"type":"messages.StickerSet"},{"id":-143257775,"method":"stickers.removeStickerFromSet","params":[{"name":"sticker","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":-4795190,"method":"stickers.changeStickerPosition","params":[{"name":"sticker","type":"InputDocument"},{"name":"position","type":"int"}],"type":"messages.StickerSet"},{"id":-2041315650,"method":"stickers.addStickerToSet","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"sticker","type":"InputStickerSetItem"}],"type":"messages.StickerSet"},{"id":-1707717072,"method":"stickers.setStickerSetThumb","params":[{"name":"stickerset","type":"InputStickerSet"},{"name":"thumb","type":"InputDocument"}],"type":"messages.StickerSet"},{"id":676017721,"method":"stickers.checkShortName","params":[{"name":"short_name","type":"string"}],"type":"Bool"},{"id":1303364867,"method":"stickers.suggestShortName","params":[{"name":"title","type":"string"}],"type":"stickers.SuggestedShortName"},{"id":1430593449,"method":"phone.getCallConfig","params":[],"type":"DataJSON"},{"id":1124046573,"method":"phone.requestCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"user_id","type":"InputUser"},{"name":"random_id","type":"int"},{"name":"g_a_hash","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":1003664544,"method":"phone.acceptCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_b","type":"bytes"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":788404002,"method":"phone.confirmCall","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"g_a","type":"bytes"},{"name":"key_fingerprint","type":"long"},{"name":"protocol","type":"PhoneCallProtocol"}],"type":"phone.PhoneCall"},{"id":399855457,"method":"phone.receivedCall","params":[{"name":"peer","type":"InputPhoneCall"}],"type":"Bool"},{"id":-1295269440,"method":"phone.discardCall","params":[{"name":"flags","type":"#"},{"name":"video","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"duration","type":"int"},{"name":"reason","type":"PhoneCallDiscardReason"},{"name":"connection_id","type":"long"}],"type":"Updates"},{"id":1508562471,"method":"phone.setCallRating","params":[{"name":"flags","type":"#"},{"name":"user_initiative","type":"flags.0?true"},{"name":"peer","type":"InputPhoneCall"},{"name":"rating","type":"int"},{"name":"comment","type":"string"}],"type":"Updates"},{"id":662363518,"method":"phone.saveCallDebug","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"debug","type":"DataJSON"}],"type":"Bool"},{"id":-8744061,"method":"phone.sendSignalingData","params":[{"name":"peer","type":"InputPhoneCall"},{"name":"data","type":"bytes"}],"type":"Bool"},{"id":1221445336,"method":"phone.createGroupCall","params":[{"name":"flags","type":"#"},{"name":"peer","type":"InputPeer"},{"name":"random_id","type":"int"},{"name":"title","type":"flags.0?string"},{"name":"schedule_date","type":"flags.1?int"}],"type":"Updates"},{"id":-1322057861,"method":"phone.joinGroupCall","params":[{"name":"flags","type":"#"},{"name":"muted","type":"flags.0?true"},{"name":"video_stopped","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_as","type":"InputPeer"},{"name":"invite_hash","type":"flags.1?string"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":1342404601,"method":"phone.leaveGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"source","type":"int"}],"type":"Updates"},{"id":2067345760,"method":"phone.inviteToGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"users","type":"Vector"}],"type":"Updates"},{"id":2054648117,"method":"phone.discardGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1958458429,"method":"phone.toggleGroupCallSettings","params":[{"name":"flags","type":"#"},{"name":"reset_invite_hash","type":"flags.1?true"},{"name":"call","type":"InputGroupCall"},{"name":"join_muted","type":"flags.0?Bool"}],"type":"Updates"},{"id":68699611,"method":"phone.getGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"limit","type":"int"}],"type":"phone.GroupCall"},{"id":-984033109,"method":"phone.getGroupParticipants","params":[{"name":"call","type":"InputGroupCall"},{"name":"ids","type":"Vector"},{"name":"sources","type":"Vector"},{"name":"offset","type":"string"},{"name":"limit","type":"int"}],"type":"phone.GroupParticipants"},{"id":-1248003721,"method":"phone.checkGroupCall","params":[{"name":"call","type":"InputGroupCall"},{"name":"sources","type":"Vector"}],"type":"Vector"},{"id":-248985848,"method":"phone.toggleGroupCallRecord","params":[{"name":"flags","type":"#"},{"name":"start","type":"flags.0?true"},{"name":"video","type":"flags.2?true"},{"name":"call","type":"InputGroupCall"},{"name":"title","type":"flags.1?string"},{"name":"video_portrait","type":"flags.2?Bool"}],"type":"Updates"},{"id":-1524155713,"method":"phone.editGroupCallParticipant","params":[{"name":"flags","type":"#"},{"name":"call","type":"InputGroupCall"},{"name":"participant","type":"InputPeer"},{"name":"muted","type":"flags.0?Bool"},{"name":"volume","type":"flags.1?int"},{"name":"raise_hand","type":"flags.2?Bool"},{"name":"video_stopped","type":"flags.3?Bool"},{"name":"video_paused","type":"flags.4?Bool"},{"name":"presentation_paused","type":"flags.5?Bool"}],"type":"Updates"},{"id":480685066,"method":"phone.editGroupCallTitle","params":[{"name":"call","type":"InputGroupCall"},{"name":"title","type":"string"}],"type":"Updates"},{"id":-277077702,"method":"phone.getGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"}],"type":"phone.JoinAsPeers"},{"id":-425040769,"method":"phone.exportGroupCallInvite","params":[{"name":"flags","type":"#"},{"name":"can_self_unmute","type":"flags.0?true"},{"name":"call","type":"InputGroupCall"}],"type":"phone.ExportedGroupCallInvite"},{"id":563885286,"method":"phone.toggleGroupCallStartSubscription","params":[{"name":"call","type":"InputGroupCall"},{"name":"subscribed","type":"Bool"}],"type":"Updates"},{"id":1451287362,"method":"phone.startScheduledGroupCall","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":1465786252,"method":"phone.saveDefaultGroupCallJoinAs","params":[{"name":"peer","type":"InputPeer"},{"name":"join_as","type":"InputPeer"}],"type":"Bool"},{"id":-873829436,"method":"phone.joinGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"},{"name":"params","type":"DataJSON"}],"type":"Updates"},{"id":475058500,"method":"phone.leaveGroupCallPresentation","params":[{"name":"call","type":"InputGroupCall"}],"type":"Updates"},{"id":-219008246,"method":"langpack.getLangPack","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackDifference"},{"id":-269862909,"method":"langpack.getStrings","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"keys","type":"Vector"}],"type":"Vector"},{"id":-845657435,"method":"langpack.getDifference","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"},{"name":"from_version","type":"int"}],"type":"LangPackDifference"},{"id":1120311183,"method":"langpack.getLanguages","params":[{"name":"lang_pack","type":"string"}],"type":"Vector"},{"id":1784243458,"method":"langpack.getLanguage","params":[{"name":"lang_pack","type":"string"},{"name":"lang_code","type":"string"}],"type":"LangPackLanguage"},{"id":1749536939,"method":"folders.editPeerFolders","params":[{"name":"folder_peers","type":"Vector"}],"type":"Updates"},{"id":472471681,"method":"folders.deleteFolder","params":[{"name":"folder_id","type":"int"}],"type":"Updates"},{"id":-1421720550,"method":"stats.getBroadcastStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.BroadcastStats"},{"id":1646092192,"method":"stats.loadAsyncGraph","params":[{"name":"flags","type":"#"},{"name":"token","type":"string"},{"name":"x","type":"flags.0?long"}],"type":"StatsGraph"},{"id":-589330937,"method":"stats.getMegagroupStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"}],"type":"stats.MegagroupStats"},{"id":1445996571,"method":"stats.getMessagePublicForwards","params":[{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"},{"name":"offset_rate","type":"int"},{"name":"offset_peer","type":"InputPeer"},{"name":"offset_id","type":"int"},{"name":"limit","type":"int"}],"type":"messages.Messages"},{"id":-1226791947,"method":"stats.getMessageStats","params":[{"name":"flags","type":"#"},{"name":"dark","type":"flags.0?true"},{"name":"channel","type":"InputChannel"},{"name":"msg_id","type":"int"}],"type":"stats.MessageStats"}]},"layer":133} \ No newline at end of file diff --git a/src/scss/partials/_autocompleteHelper.scss b/src/scss/partials/_autocompleteHelper.scss index f29c5ca8..4b54948a 100644 --- a/src/scss/partials/_autocompleteHelper.scss +++ b/src/scss/partials/_autocompleteHelper.scss @@ -24,13 +24,23 @@ display: none; } + &.is-visible { + visibility: hidden; + } + @include animation-level(2) { &.is-visible { animation: fade-out-opacity .2s ease-in-out forwards; + transition: visibility 0s .2s; + } + } - &:not(.backwards) { - animation-name: fade-in-opacity; - } + .bubbles:not(.is-selecting) ~ .chat-input &.is-visible:not(.backwards) { + visibility: visible; + + @include animation-level(2) { + animation-name: fade-in-opacity; + transition: visibility 0s 0s; } } diff --git a/src/scss/partials/_avatar.scss b/src/scss/partials/_avatar.scss index 6c9a3c0c..39696caa 100644 --- a/src/scss/partials/_avatar.scss +++ b/src/scss/partials/_avatar.scss @@ -69,6 +69,10 @@ avatar-element { font-size: calc(21px / var(--multiplier)) !important; // ! IMPORTANT IS TEMPORARY } + &.tgico-reply_filled:before { + font-size: calc(28px / var(--multiplier)) !important; // ! IMPORTANT IS TEMPORARY + } + /* &.tgico-savedmessages:before { font-size: calc(25px / var(--multiplier)); } */ diff --git a/src/scss/partials/_chat.scss b/src/scss/partials/_chat.scss index 3cdc637a..2a833af5 100644 --- a/src/scss/partials/_chat.scss +++ b/src/scss/partials/_chat.scss @@ -289,8 +289,12 @@ $chat-helper-size: 36px; &.edit .tgico-check, &.schedule .tgico-schedule { visibility: visible !important; - - + } + + &:not(.record) { + .c-ripple__circle { + background-color: var(--light-primary-color); + } } @include animation-level(2) { @@ -942,13 +946,26 @@ $chat-helper-size: 36px; } */ .reply { - width: 100%; + order: 1; + flex: 1 1 auto; margin: 0 .625rem; // min-height: 35px; /* &-content { margin-left: .5rem; } */ + + &-icon { + order: 0; + pointer-events: none; + + display: none; + } + + &-cancel { + // order: 2; + order: 0; + } } /* span.emoji { @@ -1174,7 +1191,7 @@ $chat-helper-size: 36px; } &.with-beside-button .bubble-content-wrapper { - max-width: calc(100% - var(--message-beside-button-margin)) !important; + max-width: calc(100% - var(--message-beside-button-margin) * -1) !important; } } } diff --git a/src/scss/partials/_chatBubble.scss b/src/scss/partials/_chatBubble.scss index aefa9cd7..d2f5fa0b 100644 --- a/src/scss/partials/_chatBubble.scss +++ b/src/scss/partials/_chatBubble.scss @@ -5,6 +5,7 @@ */ $bubble-margin: .25rem; +$bubble-beside-button-width: 38px; @keyframes bubbleSelected { 0% { @@ -54,6 +55,46 @@ $bubble-margin: .25rem; flex-wrap: wrap; //flex-direction: column; // fix 'Unread messages', still need to refactor it + &.is-gesturing-reply { + transform: translateX(0); + + &.animating.backwards { + transition: transform var(--transition-standard-out); + } + + .bubble-gesture-reply-icon { + width: var(--message-beside-button-size); + height: var(--message-beside-button-size); + position: absolute; + top: 50%; + right: var(--message-beside-button-margin); + transform: translateY(-50%); + color: #fff; + border-radius: 50%; + background-color: var(--message-highlightning-color); + opacity: 0; + display: flex; + align-items: center; + justify-content: center; + transform: translateY(-50%) scale(0.6); + visibility: hidden; + + &:before { + font-size: 1.125rem !important; + } + + @include animation-level(2) { + transition: transform .1s ease-in-out; + } + + &.is-visible { + visibility: visible; + // opacity: 1; + transform: translateY(-50%) scale(1); + } + } + } + &.is-highlighted, &.is-selected, /* .bubbles.is-selecting */ & { @@ -321,10 +362,10 @@ $bubble-margin: .25rem; //opacity: 0; //transition: .2s opacity; position: absolute; - right: -46px; + right: var(--message-beside-button-margin); bottom: 0; - width: 38px; - height: 38px; + width: var(--message-beside-button-size); + height: var(--message-beside-button-size); font-size: 1.5rem; align-items: center; display: flex; @@ -972,10 +1013,10 @@ $bubble-margin: .25rem; } */ .reply { - padding: 4px; - margin: 0 4px 6px 6px; + padding: .25rem; + margin: 0 .25rem .375rem .375rem; cursor: pointer; - border-radius: 4px; + border-radius: .25rem; min-width: 10rem; width: auto; @@ -986,13 +1027,22 @@ $bubble-margin: .25rem; &-content { //max-width: 300px; position: absolute; - max-width: calc(100% - 1.5rem); + max-width: calc(100% - 1.875rem); height: auto; min-height: 32px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } + + &.is-media .reply-content { + max-width: calc(100% - 1.5rem); + } + } + + &:not(.just-media):not(.is-message-empty) .reply { + // margin-bottom: .125rem; // ! JS2 mockup + margin-bottom: 0; // ! same margin as between name and message } &.just-media { @@ -2331,7 +2381,7 @@ $bubble-margin: .25rem; .bubble-beside-button { right: auto; - left: -46px; + left: var(--message-beside-button-margin); //transform: scaleX(-1); &.goto-original { @@ -2441,16 +2491,8 @@ $bubble-margin: .25rem; transform: rotate(-45deg); } - /* &.is-switch-inline:before { - content: $tgico-forward; - } */ - - .forward-icon { - width: .875rem; + &.is-switch-inline:before { + content: $tgico-forward_filled; } - - /* img.emoji { - margin: 0 .125rem; - } */ } } diff --git a/src/scss/partials/_chatPinned.scss b/src/scss/partials/_chatPinned.scss index 2b8a3f6f..850ead48 100644 --- a/src/scss/partials/_chatPinned.scss +++ b/src/scss/partials/_chatPinned.scss @@ -583,7 +583,7 @@ &.is-floating { --container-height: var(--pinned-audio-height); - z-index: 1; // fix z-index for volume selector + // z-index: 1; // fix z-index for volume selector } &:not(.is-floating) { diff --git a/src/scss/partials/_chatTopbar.scss b/src/scss/partials/_chatTopbar.scss index f88d7a20..67bf537a 100644 --- a/src/scss/partials/_chatTopbar.scss +++ b/src/scss/partials/_chatTopbar.scss @@ -53,6 +53,13 @@ --pinned-floating-height: var(--pinned-message-height); } + &:not(.is-pinned-message-floating) { + .chat-utils { + position: relative; + z-index: 1; + } + } + &.is-pinned-audio-floating.is-pinned-message-floating { --pinned-floating-height: calc(var(--pinned-audio-height) + var(--pinned-message-height)); diff --git a/src/scss/partials/_fonts.scss b/src/scss/partials/_fonts.scss index 314194f1..67f7e43e 100644 --- a/src/scss/partials/_fonts.scss +++ b/src/scss/partials/_fonts.scss @@ -9,9 +9,9 @@ @font-face { font-family: "#{$tgico-font-family}"; src: - url('#{$tgico-font-path}/#{$tgico-font-family}.ttf?4vj0au') format('truetype'), - url('#{$tgico-font-path}/#{$tgico-font-family}.woff?4vj0au') format('woff'), - url('#{$tgico-font-path}/#{$tgico-font-family}.svg?4vj0au#tgico') format('svg'); + url('#{$tgico-font-path}/#{$tgico-font-family}.ttf?vbev5x') format('truetype'), + url('#{$tgico-font-path}/#{$tgico-font-family}.woff?vbev5x') format('woff'), + url('#{$tgico-font-path}/#{$tgico-font-family}.svg?vbev5x#tgico') format('svg'); font-weight: normal; font-style: normal; font-display: block; @@ -37,6 +37,26 @@ -moz-osx-font-smoothing: grayscale; } +.tgico-avatarnext { + &:before { + content: $tgico-avatarnext; + } +} +.tgico-avatarprevious { + &:before { + content: $tgico-avatarprevious; + } +} +.tgico-forward_filled { + &:before { + content: $tgico-forward_filled; + } +} +.tgico-reply_filled { + &:before { + content: $tgico-reply_filled; + } +} .tgico-check { &:before { content: $tgico-check; @@ -242,16 +262,16 @@ content: $tgico-data; } } -.tgico-delete { - &:before { - content: $tgico-delete; - } -} .tgico-delete_filled { &:before { content: $tgico-delete_filled; } } +.tgico-delete { + &:before { + content: $tgico-delete; + } +} .tgico-deletedaccount { &:before { content: $tgico-deletedaccount; @@ -732,6 +752,11 @@ content: $tgico-tip; } } +.tgico-tools { + &:before { + content: $tgico-tools; + } +} .tgico-unarchive { &:before { content: $tgico-unarchive; diff --git a/src/scss/partials/_ico.scss b/src/scss/partials/_ico.scss index b97b3f65..24298daa 100644 --- a/src/scss/partials/_ico.scss +++ b/src/scss/partials/_ico.scss @@ -19,152 +19,157 @@ $tgico-font-path: "assets/fonts" !default; .replace(/\.(.+?):before\{content:"(.+?);\}/g, `$$$1: "\\$2;\n`); */ -$tgico-check: "\e900"; -$tgico-checks: "\e901"; -$tgico-activesessions: "\e902"; -$tgico-add: "\e903"; -$tgico-addmember_filled: "\e904"; -$tgico-adduser: "\e905"; -$tgico-admin: "\e906"; -$tgico-animals: "\e907"; -$tgico-animations: "\e908"; -$tgico-archive: "\e909"; -$tgico-arrow_down: "\e90a"; -$tgico-arrow_next: "\e90b"; -$tgico-attach: "\e90c"; -$tgico-bold: "\e90d"; -$tgico-botcom: "\e90e"; -$tgico-bots: "\e90f"; -$tgico-bug: "\e910"; -$tgico-calendar: "\e911"; -$tgico-calendarfilter: "\e912"; -$tgico-camera: "\e913"; -$tgico-cameraadd: "\e914"; -$tgico-car: "\e915"; -$tgico-channel: "\e916"; -$tgico-channelviews: "\e917"; -$tgico-chatspinned: "\e918"; -$tgico-chatsplaceholder: "\e919"; -$tgico-check1: "\e91a"; -$tgico-checkbox: "\e91b"; -$tgico-checkboxblock: "\e91c"; -$tgico-checkboxempty: "\e91d"; -$tgico-checkboxon: "\e91e"; -$tgico-checkretract: "\e91f"; -$tgico-checkround: "\e920"; -$tgico-close: "\e921"; -$tgico-clouddownload: "\e922"; -$tgico-colorize: "\e923"; -$tgico-comments: "\e924"; -$tgico-commentssticker: "\e925"; -$tgico-copy: "\e926"; -$tgico-darkmode: "\e927"; -$tgico-data: "\e928"; -$tgico-delete: "\e929"; -$tgico-delete_filled: "\e92a"; -$tgico-deletedaccount: "\e92b"; -$tgico-deleteleft: "\e92c"; -$tgico-deleteuser: "\e92d"; -$tgico-devices: "\e92e"; -$tgico-document: "\e92f"; -$tgico-down: "\e930"; -$tgico-download: "\e931"; -$tgico-dragfiles: "\e932"; -$tgico-dragmedia: "\e933"; -$tgico-eats: "\e934"; -$tgico-edit: "\e935"; -$tgico-email: "\e936"; -$tgico-enter: "\e937"; -$tgico-eye1: "\e938"; -$tgico-eye2: "\e939"; -$tgico-favourites: "\e93a"; -$tgico-flag: "\e93b"; -$tgico-folder: "\e93c"; -$tgico-fontsize: "\e93d"; -$tgico-forward: "\e93e"; -$tgico-fullscreen: "\e93f"; -$tgico-gifs: "\e940"; -$tgico-group: "\e941"; -$tgico-help: "\e942"; -$tgico-image: "\e943"; -$tgico-info: "\e944"; -$tgico-info2: "\e945"; -$tgico-italic: "\e946"; -$tgico-keyboard: "\e947"; -$tgico-lamp: "\e948"; -$tgico-language: "\e949"; -$tgico-largepause: "\e94a"; -$tgico-largeplay: "\e94b"; -$tgico-left: "\e94c"; -$tgico-link: "\e94d"; -$tgico-livelocation: "\e94e"; -$tgico-location: "\e94f"; -$tgico-lock: "\e950"; -$tgico-lockoff: "\e951"; -$tgico-loginlogodesktop: "\e952"; -$tgico-loginlogomobile: "\e953"; -$tgico-logout: "\e954"; -$tgico-mention: "\e955"; -$tgico-menu: "\e956"; -$tgico-message: "\e957"; -$tgico-messageunread: "\e958"; -$tgico-microphone: "\e959"; -$tgico-minus: "\e95a"; -$tgico-monospace: "\e95b"; -$tgico-more: "\e95c"; -$tgico-mute: "\e95d"; -$tgico-muted: "\e95e"; -$tgico-newchannel: "\e95f"; -$tgico-newchat_filled: "\e960"; -$tgico-newgroup: "\e961"; -$tgico-newprivate: "\e962"; -$tgico-next: "\e963"; -$tgico-noncontacts: "\e964"; -$tgico-nosound: "\e965"; -$tgico-passwordoff: "\e966"; -$tgico-pause: "\e967"; -$tgico-permissions: "\e968"; -$tgico-phone: "\e969"; -$tgico-pin: "\e96a"; -$tgico-pinlist: "\e96b"; -$tgico-pinned_filled: "\e96c"; -$tgico-pinnedchat: "\e96d"; -$tgico-play: "\e96e"; -$tgico-plus: "\e96f"; -$tgico-poll: "\e970"; -$tgico-previous: "\e971"; -$tgico-radiooff: "\e972"; -$tgico-radioon: "\e973"; -$tgico-readchats: "\e974"; -$tgico-recent: "\e975"; -$tgico-replace: "\e976"; -$tgico-reply: "\e977"; -$tgico-saved: "\e978"; -$tgico-savedmessages: "\e979"; -$tgico-schedule: "\e97a"; -$tgico-scheduled: "\e97b"; -$tgico-search: "\e97c"; -$tgico-select: "\e97d"; -$tgico-send: "\e97e"; -$tgico-send2: "\e97f"; -$tgico-sending: "\e980"; -$tgico-sendingerror: "\e981"; -$tgico-settings: "\e982"; -$tgico-smallscreen: "\e983"; -$tgico-smile: "\e984"; -$tgico-sport: "\e985"; -$tgico-stickers: "\e986"; -$tgico-stop: "\e987"; -$tgico-strikethrough: "\e988"; -$tgico-textedit: "\e989"; -$tgico-tip: "\e98a"; -$tgico-unarchive: "\e98b"; -$tgico-underline: "\e98c"; -$tgico-unmute: "\e98d"; -$tgico-unpin: "\e98e"; -$tgico-unread: "\e98f"; -$tgico-up: "\e990"; -$tgico-user: "\e991"; -$tgico-username: "\e992"; -$tgico-zoomin: "\e993"; -$tgico-zoomout: "\e994"; +$tgico-avatarnext: "\e900"; +$tgico-avatarprevious: "\e901"; +$tgico-forward_filled: "\e902"; +$tgico-reply_filled: "\e903"; +$tgico-check: "\e904"; +$tgico-checks: "\e905"; +$tgico-activesessions: "\e906"; +$tgico-add: "\e907"; +$tgico-addmember_filled: "\e908"; +$tgico-adduser: "\e909"; +$tgico-admin: "\e90a"; +$tgico-animals: "\e90b"; +$tgico-animations: "\e90c"; +$tgico-archive: "\e90d"; +$tgico-arrow_down: "\e90e"; +$tgico-arrow_next: "\e90f"; +$tgico-attach: "\e910"; +$tgico-bold: "\e911"; +$tgico-botcom: "\e912"; +$tgico-bots: "\e913"; +$tgico-bug: "\e914"; +$tgico-calendar: "\e915"; +$tgico-calendarfilter: "\e916"; +$tgico-camera: "\e917"; +$tgico-cameraadd: "\e918"; +$tgico-car: "\e919"; +$tgico-channel: "\e91a"; +$tgico-channelviews: "\e91b"; +$tgico-chatspinned: "\e91c"; +$tgico-chatsplaceholder: "\e91d"; +$tgico-check1: "\e91e"; +$tgico-checkbox: "\e91f"; +$tgico-checkboxblock: "\e920"; +$tgico-checkboxempty: "\e921"; +$tgico-checkboxon: "\e922"; +$tgico-checkretract: "\e923"; +$tgico-checkround: "\e924"; +$tgico-close: "\e925"; +$tgico-clouddownload: "\e926"; +$tgico-colorize: "\e927"; +$tgico-comments: "\e928"; +$tgico-commentssticker: "\e929"; +$tgico-copy: "\e92a"; +$tgico-darkmode: "\e92b"; +$tgico-data: "\e92c"; +$tgico-delete_filled: "\e92d"; +$tgico-delete: "\e92e"; +$tgico-deletedaccount: "\e92f"; +$tgico-deleteleft: "\e930"; +$tgico-deleteuser: "\e931"; +$tgico-devices: "\e932"; +$tgico-document: "\e933"; +$tgico-down: "\e934"; +$tgico-download: "\e935"; +$tgico-dragfiles: "\e936"; +$tgico-dragmedia: "\e937"; +$tgico-eats: "\e938"; +$tgico-edit: "\e939"; +$tgico-email: "\e93a"; +$tgico-enter: "\e93b"; +$tgico-eye1: "\e93c"; +$tgico-eye2: "\e93d"; +$tgico-favourites: "\e93e"; +$tgico-flag: "\e93f"; +$tgico-folder: "\e940"; +$tgico-fontsize: "\e941"; +$tgico-forward: "\e942"; +$tgico-fullscreen: "\e943"; +$tgico-gifs: "\e944"; +$tgico-group: "\e945"; +$tgico-help: "\e946"; +$tgico-image: "\e947"; +$tgico-info: "\e948"; +$tgico-info2: "\e949"; +$tgico-italic: "\e94a"; +$tgico-keyboard: "\e94b"; +$tgico-lamp: "\e94c"; +$tgico-language: "\e94d"; +$tgico-largepause: "\e94e"; +$tgico-largeplay: "\e94f"; +$tgico-left: "\e950"; +$tgico-link: "\e951"; +$tgico-livelocation: "\e952"; +$tgico-location: "\e953"; +$tgico-lock: "\e954"; +$tgico-lockoff: "\e955"; +$tgico-loginlogodesktop: "\e956"; +$tgico-loginlogomobile: "\e957"; +$tgico-logout: "\e958"; +$tgico-mention: "\e959"; +$tgico-menu: "\e95a"; +$tgico-message: "\e95b"; +$tgico-messageunread: "\e95c"; +$tgico-microphone: "\e95d"; +$tgico-minus: "\e95e"; +$tgico-monospace: "\e95f"; +$tgico-more: "\e960"; +$tgico-mute: "\e961"; +$tgico-muted: "\e962"; +$tgico-newchannel: "\e963"; +$tgico-newchat_filled: "\e964"; +$tgico-newgroup: "\e965"; +$tgico-newprivate: "\e966"; +$tgico-next: "\e967"; +$tgico-noncontacts: "\e968"; +$tgico-nosound: "\e969"; +$tgico-passwordoff: "\e96a"; +$tgico-pause: "\e96b"; +$tgico-permissions: "\e96c"; +$tgico-phone: "\e96d"; +$tgico-pin: "\e96e"; +$tgico-pinlist: "\e96f"; +$tgico-pinned_filled: "\e970"; +$tgico-pinnedchat: "\e971"; +$tgico-play: "\e972"; +$tgico-plus: "\e973"; +$tgico-poll: "\e974"; +$tgico-previous: "\e975"; +$tgico-radiooff: "\e976"; +$tgico-radioon: "\e977"; +$tgico-readchats: "\e978"; +$tgico-recent: "\e979"; +$tgico-replace: "\e97a"; +$tgico-reply: "\e97b"; +$tgico-saved: "\e97c"; +$tgico-savedmessages: "\e97d"; +$tgico-schedule: "\e97e"; +$tgico-scheduled: "\e97f"; +$tgico-search: "\e980"; +$tgico-select: "\e981"; +$tgico-send: "\e982"; +$tgico-send2: "\e983"; +$tgico-sending: "\e984"; +$tgico-sendingerror: "\e985"; +$tgico-settings: "\e986"; +$tgico-smallscreen: "\e987"; +$tgico-smile: "\e988"; +$tgico-sport: "\e989"; +$tgico-stickers: "\e98a"; +$tgico-stop: "\e98b"; +$tgico-strikethrough: "\e98c"; +$tgico-textedit: "\e98d"; +$tgico-tip: "\e98e"; +$tgico-tools: "\e98f"; +$tgico-unarchive: "\e990"; +$tgico-underline: "\e991"; +$tgico-unmute: "\e992"; +$tgico-unpin: "\e993"; +$tgico-unread: "\e994"; +$tgico-up: "\e995"; +$tgico-user: "\e996"; +$tgico-username: "\e997"; +$tgico-zoomin: "\e998"; +$tgico-zoomout: "\e999"; diff --git a/src/scss/partials/_profile.scss b/src/scss/partials/_profile.scss index c7a6e0db..746032f7 100644 --- a/src/scss/partials/_profile.scss +++ b/src/scss/partials/_profile.scss @@ -154,11 +154,16 @@ bottom: 0; width: calc(100% / 3); opacity: 0; - background-image: url(assets/img/avatarprevious.svg); - background-position: 1.125rem 50%; - background-repeat: no-repeat; - background-size: 1.25rem; - + + &:before { + position: absolute; + top: 50%; + transform: translateY(-50%); + font-size: 2.1875rem; + color: #fff; + left: .625rem; + } + @include animation-level(2) { transition: opacity .2s ease-in-out; } @@ -179,8 +184,11 @@ &-next { left: auto; right: 0; - background-image: url(assets/img/avatarnext.svg); - background-position: calc(100% - 1.125rem) 50%; + + &:before { + left: auto; + right: .625rem; + } } } } diff --git a/src/scss/partials/popups/_mediaAttacher.scss b/src/scss/partials/popups/_mediaAttacher.scss index 394db2ee..9c6aa06f 100644 --- a/src/scss/partials/popups/_mediaAttacher.scss +++ b/src/scss/partials/popups/_mediaAttacher.scss @@ -5,7 +5,6 @@ */ .popup-new-media { - user-select: none; $parent: ".popup"; #{$parent} { diff --git a/src/scss/partials/popups/_popup.scss b/src/scss/partials/popups/_popup.scss index 8419b6aa..5dafe6a5 100644 --- a/src/scss/partials/popups/_popup.scss +++ b/src/scss/partials/popups/_popup.scss @@ -24,6 +24,7 @@ transition-timing-function: var(--popup-transition-function); overflow: auto; display: flex; + user-select: none; body.animation-level-0 & { transition: none; diff --git a/src/scss/style.scss b/src/scss/style.scss index 9e66e3d4..bfc689c7 100644 --- a/src/scss/style.scss +++ b/src/scss/style.scss @@ -69,7 +69,8 @@ $chat-input-inner-padding-handhelds: .25rem; --chatlist-badge-transition-in: .2s cubic-bezier(.35,.35,.47,1); // 1.34 --chatlist-badge-transition-out: .2s cubic-bezier(.35,.35,.7,1); --message-handhelds-margin: 5.5625rem; - --message-beside-button-margin: 2.875rem; + --message-beside-button-size: 2.375rem; + --message-beside-button-margin: calc((var(--message-beside-button-size) + .5rem) * -1); --message-time-background: rgba(0, 0, 0, .35); --message-highlightning-color: hsla(85.5319, 36.9171%, 40.402%, .4);//rgba(77, 142, 80, .4); --messages-container-width: #{$messages-container-width}; @@ -1306,7 +1307,9 @@ middle-ellipsis-element { .tgico-admin:before, .tgico-message:before, .tgico-fontsize:before, -.tgico-forward:before { +.tgico-forward:before, +.tgico-reply_filled:before, +.tgico-forward_filled:before { font-size: 20px !important; padding: 0 2px; }